iOS调试——点击手势响应冲突处理办法
2017-03-01 09:40
661 查看
控件过滤:有些控件需要响应手势有些不需要
代理方法中过滤:
collectionViewCell点击不需要响应手势,点击其他需要收键盘
UITapGestureRecognizer *tapGr = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(hideKeyboardAction)]; tapGr.delegate = self; //设置代理 [self.view addGestureRecognizer:tapGr];
代理方法中过滤:
#pragma mark tableView和手势冲突的解决方法 - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{ if ([touch.view isKindOfClass:[UITextField class]]){ return NO; } // 若为UITableViewCellContentView(即点击了tableViewCell),则不截获Touch事件 // NSLog(NSStringFromClass([touch.view class])); if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) { return NO; } return YES; }
collectionViewCell点击不需要响应手势,点击其他需要收键盘
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { //不获取事件 if (touch.view != self.collectionView){ return NO; } return YES; }
- (void)hideKeyboardAction{ [self.view endEditing:YES]; }
相关文章推荐
- IOS开发-手势简单使用及手势不响应处理办法
- 页面加UIPanGestureRecognizer手势后,无法响应tableViewCell点击事件的解决办法
- iOS 点击子视图不让其响应父视图手势
- 有关不规则图片的点击响应事件和手势滑动闪退的处理d
- 关于点击手势冲突的处理
- IOS UISwipeGestureRecognizer 与其它手势冲突不响应
- iOS 长按手势响应执行两次解决办法
- Android滑动和点击手势冲突解决办法
- TableView cell的选中事件 与手势点击事件 冲突解决办法
- iOS中超出父视图的按钮点击事件响应处理
- IOS中自定义返回按钮点击事件响应视图过大解决办法
- iOS 手势与点击事件冲突的解决方案
- ios 手势点击子视图的时候不响应父视图的点击事件
- iOS手势与点击事件冲突
- iOS UITapGestureRecognizer手势和UIButton 以及UITabelView点击事件冲突
- iOS横向滚动的scrollView和系统pop手势返回冲突的解决办法
- iOS开发(OC)——单击手势与tableView的点击冲突
- Ios中手势点击事件和tableView点击事件冲突
- iOS 【关于百度地图大头针标记 选中状态/点击状态 的区别及处理办法】
- iOS调试——cocoa pods 添加ReactiveCocoa报错swift版本处理办法