我们在 IOS 开发中经常会需要在输入框输入数据后,需要收起系统键盘,比如由于手机屏幕不是很大,可能由于输入信息后,系统键盘就会遮挡住下一步的按钮,而系统键盘有没有收起键,所以我们可以实现点击背景视图收起键盘
具体方法如下,只需要在对应的 ViewController 里面重写下面这个方法就可以了
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { [super touchesBegan:touches withEvent:event]; [self.view endEditing:YES]; }
首先说一下重写的这个事件:touchesBegan:withEvent: 该方法告诉当前对象,在一个视图(view)或者窗口(window)中有一个或多个触摸发生。也就是说当你点击当前视图的时候,该方法会被调用,那么我们就可以在这个方法里面编写收起系统键盘的代码。
再说说里面的 endEditing: 该方法引起视图(或者视图中的TextField)失去第一响应者(the first responder)的状态;
这个方法查找当前视图和子视图中是第一响应者的TextField,如果找到一个,它会要求该 TextField 不再作为第一响应者。如果把参数设置为 YES,该 TextField 将会被强制取消第一响应者状态,而不再做出要求。
原文地址:https://www.cnblogs.com/huangzhengguo/p/12157808.html
时间: 2024-11-10 21:54:24