即使运行代码,resignFirstResponder也不会关闭键盘

时间:2014-03-04 01:31:40

标签: ios7 resignfirstresponder

这行代码是在我的电子邮件textField editingDidEnd时运行的。 NSLog运行所以我知道该功能已经运行,但键盘仍然不会消失。我已将textBox连接为委托。我确保故事板中的连接在那里。它仍然不会改变。救命。感谢。

- (IBAction)emailDone2:(id)sender
{
    [_email resignFirstResponder];
    NSLog(@"emailDone2");
}

编辑 * * 我按照指示更改了代码,但这仍然无效。没有任何改变。

- (IBAction)emailDone2:(id)sender
{
    [self.view endEditing:TRUE];
}

2 个答案:

答案 0 :(得分:3)

问题是,您认为谁是第一响应者,谁 第一响应者可能不一样。幸运的是,已经有一种方法可以解决这个问题。尝试使用

[topView endEditing:YES];

其中topView是最顶层的视图。 endEditing将通过子视图递归,找到第一个响应者,并告诉它辞职第一个响应者。这比跟踪哪个子视图更简单。

keyboard not responding to resignFirstResponder中找到此信息,在侧边栏中链接到此问题。

答案 1 :(得分:0)

要退出resignFirstResponder,textViewShouldEndEditing的返回值应为真