我正在使用searchBar,其中单击searchBar的取消按钮应该删除键盘。我尝试使用resignFirstResponder,但那根本不起作用。有没有人有其他出路呢?
答案 0 :(得分:0)
使用此行,它会帮助你
[self.view endEditing:YES];
答案 1 :(得分:0)
在OP中没有任何代码,请尝试:
[self.view endEditing:YES];
您需要以下一种/所有方法:
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText {
if (searchText.length == 0) {
[searchBar resignFirstResponder];
}
}
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar {
[searchBar resignFirstResponder];
}
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar {
[searchBar resignFirstResponder];
}
答案 2 :(得分:0)
这个测试代码可以工作1000%。
在你的.h文件中
@interface ViewController : UIViewController<UISearchBarDelegate>
在viewDidLoad方法中设置委托
@property (strong, nonatomic) UISearchBar *searchBar;
- (void)viewDidLoad
{
[super viewDidLoad];
[self.searchBar setDelegate:self];
}
-(BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar{
[self.searchBar setShowsCancelButton:YES];
return YES;
}
-(void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
searchBar.text = @"";
[searchBar resignFirstResponder];
}