美文网首页
iOS tableView添加手势冲突解决办法

iOS tableView添加手势冲突解决办法

作者: 单抽律化娜 | 来源:发表于2021-03-02 11:51 被阅读0次

1、在tableView上添加手势,并设置手势代理为当前控制器
2、利用代理方法- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 允许tableView上响应多手势
3、利用代理方法- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer,控制添加的手势是否响应

通常在tableView上添加手势,会有冲突,比如在tableView上添加pan手势,就会让tableView的无法滚动,在tableViewCell上添加tap手势,就会让tableViewCell的didSelectCell方法无法响应等等,利用代理方法 gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer: 虽然能让添加的手势和原来的事件都响应,但是会造成一次性响应多个事件,这时候就需要用代理方法gestureRecognizerShouldBegin:来控制,添加的手势是否需要响应,并且不会阻断事件传递,这样就能很好的解决冲突问题。

相关文章

网友评论

      本文标题:iOS tableView添加手势冲突解决办法

      本文链接:https://www.haomeiwen.com/subject/xtdtqltx.html