キーボードが表示するUISearchBar
にテキストを入力するときに、UISearchBar
を使用しています。そのとき、キーボードのリターンキーは「検索」です。キーボードの検索ボタンを押したときにイベントを実装したい。アクションを実装するにはどうすればよいですか? UITextField
には
-(BOOL)textFieldShouldReturn:(UITextField *)textField;
ただし、UISearchBar
では、returnアクションがありません。
ご協力いただきありがとうございます。
。hにUISearchBarDelegateを追加
またSearchBarのオブジェクトデリゲートをselfに設定します。
これをUISearchBarDelegateのメソッドに追加します。
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
[searchBar resignFirstResponder];
// Do the search...
}
スイフト
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
}
In Swift 3 ::
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
}
textFieldShouldReturn
メソッドはtextField
デリゲートメソッドであり、探しているものではありません。必要なのは、UISearchBarDelegate
と呼ばれるsearchButtonClicked
メソッド、 こちらをご覧ください です。