5

ユーザーがボタンをクリックしたときにキーボードを閉じるにはどうすればよいですか?理解を深めるための簡単な例:ユーザーは一部のテキストフィールドのテキストを編集し、最後にキーボードの[完了]をクリックしたり他の文字を入力したりしませんが、キーボードが表示されている間に[保存]ボタンをクリックします。では、どうすればキーボードを閉じることができますか?

どうも。よろしく、ダニエル

4

4 に答える 4

6

[view endEditing:YES]階層内のテキスト フィールドの上にある任意のビューを呼び出すこともできます。これは、どのテキスト フィールドがファーストレスポンダー ステータスなのかわからない場合に便利です。オプションで、テキスト フィールド デリゲートがアクションを停止できるようにすることもできます (shouldEndEditing: から NO を返すことにより)。これは、デリゲートを使用してフィールドの検証を行う場合に便利です。

于 2013-06-27T18:43:59.227 に答える
4

ボタンアクション書き込みで、

if([textField isFirstResponder]){
  [textField resignFirstResponder];
}

さらにテキストフィールドがある場合は、編集の開始時に毎回現在のテキストフィールド参照を取得し、ボタンアクションでそのレスポンダーを辞任します。

于 2011-06-15T11:32:20.560 に答える
1

複数のテキスト フィールドがあり、どれがファーストレスポンダかわからない場合 (または、このコードを記述している場所からテキスト フィールドにアクセスできない場合)、テキスト フィールドを含む親ビューで endEditing: を呼び出すことができます。 .

Swift では、関連するビュー コントローラーで、次の行をボタン関数に追加します。

self.view endEditing(true)
于 2016-07-21T16:42:43.453 に答える