iOS解决单击手势和UITableView的点击事件冲突

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS解决单击手势和UITableView的点击事件冲突相关的知识,希望对你有一定的参考价值。

参考技术A 一个页面既有tap手势又有UITableView,那么这个时候tableview的点击就会被点击手势取代,点击cell会没有反应,这时候我们要处理一下手势冲突
使用手势的代理进行解决,确认一下代理<UIGestureRecognizerDelegate>
首先我们先添加一个手势:

手势相关-解决手势冲突

解决UITableview点击事件与手势的冲突

1.签手势代理

<UIGestureRecognizerDelegate>

2.是tableview点击事件则屏蔽手势

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {

 if ([touch.view isKindOfClass:[UIScrollView class]]) {

        return YES;

    }else{

        return NO;

    }    

}

多个Label共用一个手势方法要设置tag 否则手势方法无法区分是哪一个label触发的点击事件

以上是关于iOS解决单击手势和UITableView的点击事件冲突的主要内容,如果未能解决你的问题,请参考以下文章

iOS 手势冲突

ios - UITableView 删除按钮不会对手势做出反应

iOS中添加UITapGestureRecognizer手势识别后,UITableView的didSelectRowAtIndexPath失效

iOS开发中解决UITableView嵌套ScrollView(UICollectionView)的手势冲突

手势相关-解决手势冲突

识别禁用的 UIButton 上的单击或手势事件