咱们比如登录界面的时候 想要点击屏幕就自动关闭键盘
古老的方法:
以前用的方法是给控制器添加手势监听
还要找到多少个 UITextField 然后resignFirstResponder
具体代码
//添加手势监听,当点击屏幕的时候,关闭键盘。
UITapGestureRecognizer *tap=[[UITapGestureRecognizeralloc] initWithTarget:selfaction:@selector(closeKeyboard)];
[self.viewaddGestureRecognizer:tap];
- (void)closeKeyboard
{
[self.mobileTFresignFirstResponder];
[self.msgTFresignFirstResponder];
[self.pswTFresignFirstResponder];
[self.shareTFresignFirstResponder];
// [[[UIApplication sharedApplication] keyWindow] endEditing:YES];
}
这样太麻烦。
新方法
// 一键关闭键盘
-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
[supertouchesBegan:touches withEvent:event];
[self.viewendEditing:YES];
}
一行代码。就解决tableview。滑动的时候就关闭键盘
// 老
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (scrollView.contentOffset.y < 0)
{
[[[UIApplication sharedApplication] keyWindow] endEditing:YES];
}
}
// 新
self.tableView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;