Uitableview 辞职第一响应者不工作。

Uitableview 辞职第一响应者不工作。,uitableview,uisearchbar,xib,uicontrol,Uitableview,Uisearchbar,Xib,Uicontrol,我想实现一个功能,一旦我触摸表视图,视图顶部的搜索栏将退出FirstResponder,键盘将从视图中检索。我将下面的代码与xib文件中的tableView关联,但它似乎不起作用 - (IBAction)backgroundTap:(id)sender { NSLog(@"test : did touch down"); [_searchBar resignFirstResponder]; } 我尝试了另一种实现方法,在.m文件中添加以下代码,但仍然不起作用 - (void)t

我想实现一个功能,一旦我触摸表视图,视图顶部的搜索栏将退出FirstResponder,键盘将从视图中检索。我将下面的代码与xib文件中的tableView关联,但它似乎不起作用

- (IBAction)backgroundTap:(id)sender
{
    NSLog(@"test : did touch down");
    [_searchBar resignFirstResponder];
}
我尝试了另一种实现方法,在.m文件中添加以下代码,但仍然不起作用

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
    NSLog(@"test : did touch down");
    UITouch *touch = [touches anyObject];
    UIView *view = (UIView *)[touch view];
    if (view == self.view) {
        [_searchBar resignFirstResponder];
    }
}
希望有人能帮忙

就这么办吧

[Self.view endEditing:YES];

试着做你正在做的事情,但给辞职的第一响应者打两次电话。我发现,从iOS 7开始,我必须这样做。

我在类似情况下使用您的第二种方法,它工作正常,但在iOS 7上,第一次点击时会忽略辞职的FirstResponder。与[自封:是]类似。第二个水龙头工作正常。解决办法是每次点击两次就给resignFirstResponder打电话,这样就行了。