web-dev-qa-db-ja.com

iPhoneシミュレーターでキーボードをなくす方法

IPhoneアプリにテキスト入力ボックスが1つあります。シミュレーターでタッチすると、キーボードがポップアップします。しかし、それを取り除く方法はありません。他のウェブページは、なぜそれらが機能する必要があるのか​​を説明せずに解決策を提供し、それらは私にとっては機能しません。テキストボックスのデリゲートをuiviewにしてから、オブジェクトでresignfirstresponderを呼び出すと言われますが、呼び出されることはありません。助言がありますか?誰かが実際に何が起こっているのか説明できますか?デザインパラダイムが何であるかを知っていれば、自分で理解することができます...

たぶん、テキストフィールドからフォーカスを遠ざけるために何かを持っているので、「移動」ボタンを置く必要がありますか?

20
stu

これを行う1つの方法は、オブジェクトをテキストフィールドへのデリゲートとして設定し、実装することです。

- (BOOL)textFieldShouldReturn:(UITextField *)textField

[textField resignFirstResponder]を呼び出します

これにより、戻る/移動/完了ボタンを押すとキーボードが消えます(右下のキーボードキーをどのように設定しても)。

詳細については、 ITextFieldDelegate リファレンスを参照してください。

19
Martin Gordon

デリゲートの- (BOOL)textFieldShouldReturn:(UITextField *)textFieldは、戻るボタンが押されたときに呼び出されます。

[textField resignFirstResponder]を呼び出してから、YESを返します。それでうまくいくはずです。また、デリゲートが設定されていることを確認してください。疑わしい場合は、ブレークポイントまたはNSLogを追加して確認してください。

5
freespace