I'm using UISearchBar
when I input text on UISearchBar
the keyboard shows. At that time, keyboard return key is "Search".
I want to implement event when I press the keyboard search button.
How can I implement the action?
On UITextField
it has
-(BOOL)textFieldShouldReturn:(UITextField *)textField;
But on UISearchBar
it doesn't have return action.
Thank you for your helping.
Milo
Add UISearchBarDelegate in .h
Also set SearchBar's object delegate to self.
Add this to the UISearchBarDelegate's method:
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
[searchBar resignFirstResponder];
// Do the search...
}
Swift
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
}
In Swift 3:
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchBar.resignFirstResponder()
}
The textFieldShouldReturn
method is a textField
delegate method and not the one you're looking for. What you need is a UISearchBarDelegate
method called searchButtonClicked
, have a look here.
来源:https://stackoverflow.com/questions/17628269/uisearchbar-keyboard-search-button-action