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

问题描述 投票:2回答:2

此行代码在我的电子邮件textField editingDidEnd时运行。 NSLog运行,因此我知道该功能已运行,但键盘仍然没有消失。我已经将textBox作为代理连接了。我已经确保情节提要中的连接在那里。它仍然不会改变。帮帮我。谢谢。

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

编辑* *我按照指示更改了代码,但这仍然无济于事。一切都没有改变。

- (IBAction)emailDone2:(id)sender
{
    [self.view endEditing:TRUE];
}
ios7 resignfirstresponder
2个回答
4
投票

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

[topView endEditing:YES];

其中topView是最顶层的视图。 endEditing将通过子视图进行递归,找到第一个响应者,然后告诉它退出第一响应者。这比跟踪哪个子视图要简单得多。

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


0
投票

textViewShouldEndEditing的返回值应为true,以使resignFirstResponder消失

© www.soinside.com 2019 - 2024. All rights reserved.