简单的方法来解除键盘?
我有很多控件分布在桌子上的许多表格单元格中,我想知道是否有更简单的方法来解除键盘,而不必遍历所有控件并将它们全部作为第一响应者。 我想问题是......我将如何获得当前第一响应者的键盘?
尝试:
[self.view endEditing:YES];
您可以使用[view endEditing:YES]
强制当前编辑的[view endEditing:YES]
其第一个响应者状态。 这隐藏了键盘。
与-[UIResponder resignFirstResponder]
, -[UIView endEditing:]
将搜索子视图以查找当前的第一响应者。 所以,你可以(如将其发送到您的顶级视图self.view
在UIViewController
),它会做正确的事。
(这个答案以前包含了其他一些解决方案,这些解决方案也起作用,但比必要的更复杂,为了避免混淆,我将它们移除了。)
您可以向应用程序发送无针对性的动作,它会随时退出第一响应者,而不必担心当前哪个视图具有第一响应者状态。
Objective-C的:
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];
Swift 3.0:
UIApplication.shared.sendAction(#selector(resignFirstResponder), to: nil, from: nil, for: nil)
在Mac OS X上,无针对性的操作在菜单命令中很常见,以下是iOS上的用法。
链接地址: http://www.djcxy.com/p/7693.html上一篇: Easy way to dismiss keyboard?
下一篇: Visual Studio 2010 + Windows 10 not allowing me to clean solution