web-dev-qa-db-ja.com

UISearchbarキーボード検索ボタンアクション

キーボードが表示するUISearchBarにテキストを入力するときに、UISearchBarを使用しています。そのとき、キーボードのリターンキーは「検索」です。キーボードの検索ボタンを押したときにイベントを実装したい。アクションを実装するにはどうすればよいですか? UITextFieldには

-(BOOL)textFieldShouldReturn:(UITextField *)textField;

ただし、UISearchBarでは、returnアクションがありません。

ご協力いただきありがとうございます。

36
Chenggong Jin

。hにUISearchBarDelegateを追加

またSearchBarのオブジェクトデリゲートをselfに設定します。

これをUISearchBarDelegateのメソッドに追加します。

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
    [searchBar resignFirstResponder];
    // Do the search...
}

スイフト

func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
    searchBar.resignFirstResponder()
}
101
Milo

In Swift 3 ::

 func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
        searchBar.resignFirstResponder()
 }
17
Kaptain

textFieldShouldReturnメソッドはtextFieldデリゲートメソッドであり、探しているものではありません。必要なのは、UISearchBarDelegateと呼ばれるsearchButtonClickedメソッド、 こちらをご覧ください です。

4
Adis