キーボードの終了ボタンを押すと、自動的にキーボードが離れます。私はこれをやることをどうやって止めるのですか?キーボードの「完了」ボタンをキーボードから離して停止する
答えて
私は同様の状況でした。 [myTextField resignResponder]が発生したとき、キーボードは消えましたが、画面にキーボードを表示したかっただけです。
私は、画面の外に1つの余分なUITextFieldインスタンス、たとえばdummyTextFieldを作成しました。そのフレームはCGRectMake(-10、-10,5,5)です。
[myTextField resignResponder]の後、すぐに[dummyTextField becomeFirstResponder]を呼び出しました。したがって、キーボードはまだ生きていますが、ユーザーはdummyTextFieldを見ることができません。
私はそれを行うより良い方法があると信じています。しかし、私はこのようにして、うまくいきました。
ビューコントローラがUITextField
の代理人として設定されていることを確認してから、shouldEndEditing:メソッドを実装してください。 NO
に戻って、テキストフィールドをアクティブに保ち、画面上にキーボードを置いてください。
もちろん、これは最善の方法ではないかもしれませんが、上記のドキュメントを読んだ後、適切なコールバックを見つけてプログラムのフローを適切に制御できるはずです。
お使いのコントローラがUITextFieldDelegate
(reference)のtextFieldShouldReturn:
メソッドを実装する必要があります。
はあなたのビューコントローラは、Interface Builderを介して、またはコードのいずれかで、あなたのテキストフィールドのためのデリゲートとして設定されていることを確認してください:
- (BOOL) textFieldShouldReturn:(UITextField *)textField
{
return NO;
}
:
- (void) viewDidLoad
{
self.someTextField.delegate = self;
}
次に、あなたのビューコントローラでは、あなたはtextFieldShouldReturn:
メソッドを実装する必要があります
あなたが指定しているのは、キーボードのreturn(done)キーが押されたときに何も起こらないということです。奇妙なことは、他の人が触れたように、これはまさにデフォルト動作であるということです。これは、1)あなたのテキストフィールドにresignFirstResponder
と呼んでいるか、または2)このテキストフィールドがUIWebView
の中にあり、その行為が変わっていることを意味します。
- 1. キーボードの「完了」ボタンでキーボードを辞退する
- 2. キーボードは完了し、ボタンをキャンセルできますか?
- 3. キーボードでキーボードの録音を停止する
- 4. キーボードで完了したボタンとmaxLinesを持つAutoCompleteTextView
- 5. Webviewのキーボードから完了ボタンアクションを取得する方法
- 6. キーボード入力によるロボットの停止
- 7. キーボードコントロールに完了ボタンを追加して、キーボードを非表示にする
- 8. Cn1仮想キーボードの「完了」ボタンとツールバーが消えます。
- 9. UIツールバーを使用してキーボードに「完了」ボタンを追加します
- 10. Windows Phone 7キーボードの「完了」キー?
- 11. SearchView:キーボードが表示されないボタン完了
- 12. キーボードのボタンをクリックして画面上のキーボードを消すイベント
- 13. Javaアプレットゲームループがマウス/キーボード入力を停止しますか?
- 14. キーボードの「完了」ボタンを追加する方法React Nativeを使ったEメール?
- 15. 実行中のアプリケーションをEclipseからキーボードで停止しますか?
- 16. Qt Android:「完了」を押してもキーボードが隠されない
- 17. キーボード下のボタン
- 18. キーボードのキーのデフォルト機能を停止する方法は?
- 19. ゴルーチンを停止/完了する方法
- 20. Xamarin.Formsのキーボードで終了したボタンを削除します
- 21. Swift:完了からメソッドを停止する
- 22. 完了したら、ScheduledThreadPoolExecutorでタスクを停止する方法
- 23. キーボードのキーボードから配列を入力してください
- 24. ボタンを押してキーボードを隠す
- 25. Androidキーボード(AOSP)はAndroid Oエミュレータで停止し続ける
- 26. 複数のテキスト入力(Androidのキーボードの完了/送信ボタン付き)
- 27. SlimDX Raw入力キーボード "ジャダリング"を停止する
- 28. JAppletがキーボード入力を停止または反応しない
- 29. デフォルトのキーボードからアンドロイドスタジオオープン絵文字キーボード
- 30. キーボードの終了時にキーボードを閉じる方法
私はそれがデフォルトでそれをしないと思った。完了ボタンに応答するデリゲートメソッドがありますか? – BoltClock
うーん...これはそうではありません。あなたが記述している振る舞いを取得するには、テキストフィールドデリゲートの 'textFieldShouldReturn'メソッドで' resignFirstResponder'を呼び出さなければなりません。これを停止したい場合は、その委譲メソッドを見つけ、resignFirstResponderを呼び出さないでください。 – Alex