3 -- 收回键盘几种方法

收起键盘的方法:

1、点击Return按扭时收起键盘
- (BOOL)textFieldShouldReturn:(UITextField *)textField{ return     [textField resignFirstResponder];}


2、点击背景View收起键盘(你的View必须是继承于UIControl)
[self.view endEditing:YES];


3、你可以在任何地方加上这句话,可以用来统一收起键盘
[[[UIApplication sharedApplication] keyWindow] endEditing:YES];

这个方法是我不久前碰到的,觉得有用,就记下来了。

4. 还有一个方法是直接发送 resignFirstResponder 消息:
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];

该点源自:《iOS开发进阶》 —— 唐巧

 5.补充(其他书上看的)
5.1
用户按下键盘上的Done按钮时,会产生一个Did End On Exit 事件,所以可以从TextField控件拖一个点击事件
执行方法:
{
    [sender resignFirstResponder];
}
5.2 
不是所有类型的键盘都有Done按钮,那么可以触摸背景view退出键盘
1.首先,把xib中的View的底层类由UIView更改为UIControl.
2.把View的Touch Down 拖一根线到控制器,执行
{
    [self.textField resignFirstResponder];    
}
另外,个人觉得直接在touchesBegin方法里执行上面的方法也可以,不过感觉有点low.

总结
我总结出来了四种收起键盘的方法,使用场合如下:当你能获取到 UITextField 对象时,最好使用 [obj resignFirstResponder] 方法; 如果有很多个 UITextField 对象,你也可以获取到 viewController 的 view 时,你可以使用 [[[UIApplication sharedApplication] keyWindow] endEditing:YES] 方法; 如果当前 ViewController比较难获取,那么可以使用第3种或第4种方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容