在iOS开发中,会经常调用软键盘,而且在某个时候会需要软键盘下落,这儿说几种情况
1.在一个view上的话是最简单的,一句代码就可以解决这个问题
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
[self.view endEditing:YES];
}
这样软键盘就会隐藏掉
2.第二种情况是在一个tableView中,但是cell上没有点击事件的时候,可以添加一个手势,直接点击软键盘也会消失
在viewDidLoad添加手势
UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(keyboardHide:)];
//设置成NO表示当前控件响应后会传播到其他控件上,默认为YES。
tapGestureRecognizer.cancelsTouchesInView = NO;
[self.view addGestureRecognizer:tapGestureRecognizer];
-(void)keyboardHide:(UITapGestureRecognizer*)tap{
//使你想操作的控件失去第一响应 例如 [_searchBar resignFirstResponder]; 这是让搜索框失去第一响应
}
3.第三种情况最复杂,但也很好解决,在tableView上就是需要键盘下落,并且cell上有点击事件,这个时候,如果你用第二