iPhone SDK: UISearchBar: searchBarTextDidEndEditin

2019-01-26 16:03发布

I'm implementing a search bar on my table, which should be pretty straight forward. I've got these:

- (void)searchBarTextDidBeginEditing:(UISearchBar *)theSearchBar { 
 NSLog(@"searchBarTextDidBeginEditing");
}

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText {    
    NSLog(@"The search text is: %@", searchText);
}

- (void)searchBarTextDidEndEditing:(UISearchBar *)theSearchBar {
    NSLog(@"searchBarTextDidEndEditing");
    [theSearchBar resignFirstResponder];
}

And searchBarTextDidBeginEditing fires, and I get that message in my log, but when I tap outside the search bar, above the keyboard, I don't get the searchBarTextDidEndEditing event so I can't make the keyboard disappear – the message doesn't even appear in the log.

The textDidChange is working, so it's just searchBarTextDidBeginEditing that isn't.

Any ideas? Thanks!!

2条回答
时光不老,我们不散
2楼-- · 2019-01-26 16:20

Once I implemented searchBarSearchButtonClicked that solved it for me.

查看更多
唯我独甜
3楼-- · 2019-01-26 16:33

Even i faced the same problem.

Please find with the solution below

Implement Below methods

1.searchBarTextDidEndEditing
2.searchBarSearchButtonClicked

and make sure you [UISearchchbar resignfirstresponder] in the second method mentioned above

查看更多
登录 后发表回答