- 让textFiled放弃成为第一响应者(
resignFirstResponder
)
- 让view或者子view强制结束编辑状态(
endEditing
)
1.用户点击return收起键盘,需要实现testfield的代理,在代理方法中:
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
return [textField resignFirstResponder];
}
2.点击背景view收起键盘方式:
a.直接添加view手势点击方法,实现键盘收起
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
[self.view endEditing:YES]; //实现该方法是需要注意view需要是继承UIControl而来的
}
b.在view上添加点击手势,然后实现手势方法,testField resignFirstResponder。
3.在某些情况不方便获取到view的情况下,可以使用UIApplication
的方法收起键盘。
[[[UIApplication sharedApplication] keyWindow] endEditing:YES];
或者
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];