使用手势,让键盘在点击空白处消失
我们经常会碰到一些情况,比如,需要在superview上增加一个scrollview,或者view,在scrollview和view上添加控件,
比如添加一个textfield,那么原来使用的点击空白处让键盘消失的方法,就无法响应,因为响应的方法主要作用在superview上,
我们可以这样做来实现这样的操作:
UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(keyboardHide:)]; //设置成NO表示当前控件响应后会传播到其他控件上,默认为YES。 tapGestureRecognizer.cancelsTouchesInView = NO; //将触摸事件添加到当前view [self.view addGestureRecognizer:tapGestureRecognizer];
然后实现它的方法就可以了:
-(void)keyboardHide:(UITapGestureRecognizer*)tap{ [_zhuCeTextField resignFirstResponder]; [_yanZhengTextField resignFirstResponder]; }
比较下原来的方法:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ [textFiled resignFirstResponder]; }
合适的时候用合适的方法
本文来自博客园,作者:稻草人11223,转载请注明原文链接:https://www.cnblogs.com/hero11223/p/5367307.html