web-dev-qa-db-ja.com

UISearchBarの「検索」ボタンが押されたときにキーボードを閉じるにはどうすればよいですか?

検索機能を設定してUISearchバーを実装しましたが、キーボードの「検索」ボタンを押しても何も表示されません。検索バーのテキストをそのままにして(検索結果を表示したままにするために)「検索」ボタンを押したときにキーボードを非表示にするにはどうすればよいですか?

22
cgossain

FromiOS用テキスト、Webおよび編集プログラミングガイド

キーボードを閉じるには、現在最初のレスポンダーであるテキストベースのビューのresignFirstResponderメソッドを呼び出します。

したがって、これはUISearchBarDelegateで行う必要があります。

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

Swift 4
UIViewControllerでUISearchBarDelegateが定義されていることを確認してください

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

1
ninahadi