我的页面上有一个UISearchBar。我希望这个搜索栏在点击页面的任何部分时消失。这是我在viewDidLoad中的代码:
UITapGestureRecognizer *pageTapped = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideSearchBar)];
[self.view addGestureRecognizer: pageTapped];
我的hideSearchBar方法如下所示:
-(void)hideSearchBar:(UITapGestureRecognizer *)pageTapped{
[self.view endEditing:YES];
}
我目前收到一个无法识别的选择器错误,说hideSearchBar是一个无法识别的选择器,发送到filterPageViewController的实例(包含hideSearchBar方法的类和searchBar本身)。我想知道我的头文件中是否可能遗漏了某些内容?
答案 0 :(得分:1)
您在添加操作中缺少半色数:
action:@selector(hideSearchBar)
应该是
action:@selector(hideSearchBar:)
或全部:
UITapGestureRecognizer *pageTapped = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideSearchBar:)];
或从函数中删除参数:
-(void)hideSearchBar {
如果您在hideSearchBar方法中不需要该页面。