問題タブ [first-responder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - firstResponder オブジェクトの追跡
カスタム キーボードを機能させるには、どのテキスト フィールドが firstResponder であるかを追跡する必要があります。以下のコードでは、プログラムを大幅に単純化しすぎていますが、問題の要点は次のとおりです。
firstResponder を nil に設定する行を削除すると、コードは正しく機能しなくなりますが、その理由はわかりません。(その行がなければ、最初の textView を選択してキーボードを表示できますが、その後はキーボードを元に戻すことはできません。何かアイデアはありますか? ありがとう!
objective-c - firstResponderを使用してキーボードを閉じる
キーボードを閉じるには、次のいずれかを使用します。
問題は、ユーザーがテキストフィールドを選択し、他のテキストフィールドがキーボードを表示している最初のレスポンダーであるという状況です。この特定のテキストフィールドが選択されているときにキーボードを閉じたい。したがって、これらのどちらもキーボードを閉じるには機能しません。
ファーストレスポンダーが誰なのかわからない場合、どうすればキーボードを閉じることができますか?
iphone - レスポンダーとは正確にはどういう意味ですか?
通常、resignFirstResponder を使用して、iPhone アプリでキーボードを非表示にします。たとえば、UISearchBar を使用する場合、ユーザーが検索ボタンをクリックした後、次のように searchBarSearchButtonClicked 関数を実装してキーボードを非表示にします。
searchBar をファーストレスポンダーとして設定すると、ユーザーが検索ボタンをクリックするとキーボードが非表示になります。
なぜこのように機能するのですか?キーボードを非表示にする関数は呼び出しませんでした。searchBar を最初の応答者として設定しただけです。なぜシステムはキーボードを自動的に非表示にするのでしょうか?
誰かがこのプロセスのメカニズムを説明できますか?
どうもありがとうございました!
cocoa - NSTextViewオーバーレイにより、ファーストレスポンダーのステータスが奇妙になります
私はにを持っており、NSTextView
プログラムでサブクラスをのサブビューとしてNSScrollView
挿入しています。これはオーバーレイとして機能し、その下のテキストに関するグラフィック情報を重ね合わせます。NSView
NSTextView
NSView
テキストビューが右クリックに反応しないことに気付くまでは、かなりうまく機能していると思いました。他の操作(編集、選択)は問題なく機能しているようです。
また、ファーストレスポンダーがスクロールビューの兄弟(たとえば、アウトラインビュー)に変更された場合、テキストビューはクリックしてもファーストレスポンダーのステータスを取り戻しません。クリックに応じて選択範囲が変わりますが、選択範囲のハイライトは青ではなく灰色になります(テキストビューが最初の応答者ではないことを示します)。
オーバーレイサブビューのフレームをオフセットすると、テキストビューは、オーバーレイが重なっていない領域で100%正常に動作しますが、上で概説したように、重なっている領域は正しく動作しません。
Mac OS X 10.6.4でこの動作を再現する手順:
- 昔ながらの非ドキュメントベースのCocoaアプリを作成します。
- `NSTextView'IBOutletをアプリデリゲート.hに追加します。
NSTextView
MainMenu.xibのウィンドウにを追加します。textViewアウトレットを接続します。- コードを少し入力します。
のapplicationDidFinishLaunching:
アプリを実行し、テキスト領域の右クリックが正常に機能しないことを確認します。それでも、テキストビューを操作することはできます。
次に、xibのウィンドウにNSOutlineViewを追加します。オーバーレイが配置された状態でフォーカスがテキスト領域を離れると(アウトラインビューをクリックした場合)、フォーカスをテキストビューに戻すことはできません(再びファーストレスポンダーになることはありません)。
オーバーレイがファーストレスポンダーまたはマウスイベントを受け入れないNSTextView
場合でも、がすべてのイベントを受信できるようにする方法はありますか?NSView
これはフィールドエディタに関連しているのではないかと思います。おそらく、オーバーレイビュー宛てのイベントを無視しているのでしょうか。
iphone - iOS -- UILabel サブクラス オブジェクトを強制的にファーストレスポンダにすることはできますか?
これを行う方法はありますか?
サブクラスに以下を入れてみました:
しかし、オブジェクトに becomeFirstResponder メッセージを送信しても、最初のレスポンダーにはなりませんでした。
iphone - UIViewの削除
したがってMainViewController
、ボタンで呼び出されるView Controllerがあり、このコードを押すと次のように呼び出されます。
これにより、うまく機能する新しいビューがもたらされます。ただし、このビューをその中のボタンから削除するにはどうすればよいですか?少し前に書いたアプリケーションでは、XIBファイル内で、選択してからボタン用にメソッドをMainViewController
作成RemoveView
しNewViewController
ましFirstResponder
たRemoveView
。これは機能しますが、新しいプロジェクトで複製することはできず、とにかくそれがどのように機能するかを本当に理解していません!
これは、私が探しているビューコードの削除ではなく、別のクラスからメソッドを呼び出す方法です。
誰かが私を助けることができればそれは素晴らしいことです!:)
ありがとう
iphone - キーボードを非表示にせずにFirstResponderになります
コピーをサポートし、次のコードを使用して編集メニューを表示するビューがあります。
問題は、becomeFirstResponderが呼び出されると、キーボードが非表示になることです。正しい動作の良い例は、SMSアプリにあります。返信ボックスが表示されているときにメッセージをダブルタップすると、返信ボックスのフォーカスが失われますが、キーボードは所定の位置に留まります。また、バブルの選択を解除すると、返信ボックスにフォーカスが戻ります。
objective-c - ユーザーイベントに応答するUIControlはありません
Interface Builderを使用せずにiOSアプリを作成していますが、作成しているコントロール(、など)がタッチイベントに応答しないという重要なものが不足しているようUITextField
ですUIButton
。
これが私のビュー階層です:
上記の階層を作成することができ、すべてが画面に正常に表示されますが、UITextField
またはをタップしてUIButton
も何もしません。UIGestureRecognizer
また、いくつかのサブクラスインスタンスをに追加してみUIView
ました。
を呼び出すことができ、アプリケーションはキーボードをbecomeFirstResponder
上UITextField
にして入力を受信できる状態で起動します。ただし、キーボードを閉じると、インターフェイスは「デッド」モードに戻ります。
私は何が欠けていますか?
iphone - searchBar の平文ボタンにアクセスするには?
tableView検索で「クリア」ボタン(編集時に表示されるボタン)を押すと、キーボードが消えようとしていました。「クリア」ボタンがクリックされたことを検出して、firstResponder を辞任させるにはどうすればよいですか? 私はすでにtextDidChange
メソッドでこれを試しました:
これは機能しませんでした...そしてまた試しました:
どちらのメソッドも、呼び出されたことを示していません。何か案は?
編集:現在、resignFirstResponder は機能していないようです。キーボードは画面上に残ります。私は何が間違っているのですか?
cocoa - WebViewをSafariとまったく同じように動作させる
(私が与えた答えのより良い説明を与えるために編集されました)
InterfaceBuilderで、ナビゲーションバーとWebビューで構成される非常にシンプルなブラウザーを作成しました。
入力フィールド間をタブで移動しようとするとWebビューになり、フォーカスがナビゲーションバーに移動することを除いて、すべて正常に機能します。
レスポンダーチェーンで何かをする必要があると思いますが、何がわからないのです。
何かアドバイス?
ありがとう、ケリー