该篇文章摘自我的新浪博客,原文地址为: http://blog.sina.com.cn/s/blog_dcc636350102wavx.html

UITableView 拥有属于自己的点击事件,在将一个UITableView 的控件放在其它视图上, 并且其它视图需要添加手势进行操作的情况下,我们会发现我们点击UITableView的cell的时候, 并没有出发方法:

-(void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath; 是直接进入到了手势的方法中。 这是由于手势的冲突引起的,解决方法是调用UIGestureRecognizer的大力方法:-(BOOL)gestureRecognizer:(UIGestureRecognizer*)gestureRecognizershouldReceiveTouch:(UITouch *)touch;

在此方法中, 我们可以截获所点击的视图,并决定是否手势继续向下响应:

我们可以根据UITableView的触摸来判断:

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

if([NSStringFromClass([touch.viewclass])isEqual:@"UITableViewCellContentView"]){

returnNO;

}

returnYES;

}

也可以根据 添加手势的View来判定:

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

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

returnYES;

}

returnNO;

}

转载于:https://www.cnblogs.com/CodingWalkers/p/5318659.html

iOS开发 解决UITapGestureRecognizer手势与UITableView的点击事件的冲突相关推荐

  1. IOS开发基础之手势解锁项目案例

    IOS开发基础之手势解锁项目案例 项目最终实现效果. 由于缺少红色的error背景图.我自己从安卓项目找到一个手势解锁,然后通过ps添加粉红色的红圈,才得以解决.为了分享给大家源码,github和本地 ...

  2. iOS开发UI篇—直接使用UITableView Controller

    iOS开发UI篇-直接使用UITableView Controller 一.一般过程 1 // 2 // YYViewController.h 3 // UITableView Controller ...

  3. iOS开发UI篇-在UItableview中实现加载更多功能

    iOS开发UI篇-在UItableview中实现加载更多功能 一.实现效果 点击加载更多按钮,出现一个加载图示,三秒钟后添加两条新的数据. 二.实现代码和说明 当在页面(视图部分)点击加载更多按钮的时 ...

  4. fastclick.js解决移动端(ipad)点击事件反应慢问题

    fastclick.js解决移动端(ipad)点击事件反应慢问题 参考文章: (1)fastclick.js解决移动端(ipad)点击事件反应慢问题 (2)https://www.cnblogs.co ...

  5. iOS 开发商品详情页中的banner中点击查看图片

    本文出自code4app,原文地址:http://www.code4app.com/blog-... 轮翻播放与查看是分开的,轮翻是是用 开源的SDCycleScrollView 这里是给出的是查看的 ...

  6. iOS给图片(其他view) 添加点击事件

    iOS开发中有的时候需要给一些没有点击事件的view添加点击的方法, 比如说点击一个图片想触发某个方法该如何实现了 方法一 使用 UITapGestureRecognizer 具体的方法就是创建一个  ...

  7. iOS开发-UISwipeGestureRecognizer滑动手势

    滑动手势也算是iOS中交互中很重要的一部分,上下左右滑动,UISwipeGestureRecognizer可以很轻松的解决这个问题,没什么难度直接看代码吧: UISwipeGestureRecogni ...

  8. iOS 开发 解决UICollectionView的多组头部视图样式不一样复用时发生错乱问题

    UICollectionView用起来比UITableView麻烦多了,如何解决多组头部视图复用时出现的错乱问题就很关键 头部视图有几种样式就注册几种头部视图 // 防止cell和头部视图复用出现错乱 ...

  9. iOS开发之侧滑手势返回功能

    废话 对于模态出来的viewcontroller,我们往往无法使用侧滑返回功能.但是我们都知道可以用dismiss去返回,不过对于大部分用户大大来说并不关心什么模态不模态的,我既然花了学习成本去熟悉你 ...

最新文章

  1. linux 阅读日志命令 tail
  2. python lib head,使用Python 2中的urllib2发出HTTP HEAD请求
  3. C++学习——类的多态
  4. github搜索技巧_和逛知乎、刷微博一样高效使用 GitHub
  5. C/C++:Windows编程—Windows RPC 传递自定义数据类型、自定义数据类型数组、指针数组
  6. php mysql 命令行模式_MySQL_MYSQL导入导出sql文件简析,一.MYSQL的命令行模式的设置- phpStudy...
  7. 鸿蒙系统微信红包,鸿蒙道红包版
  8. 静态代码块与构造函数的作用
  9. Python服务器管理模块psutil学习使用
  10. 【手写字母识别】基于matlab GUI ELMAN+BP神经网络手写大写字母(A-O)识别【含Matlab源码 785期】
  11. ubuntu16.04下 sublime text输入中文
  12. 企业并购方式及并购操作流程
  13. kettle使用命令行来运行ktr和kjb
  14. 为什么男人总是欺负你?
  15. FaceNet 人脸比对框架 部署+测试
  16. SD-WAN 与传统 WAN
  17. element ui的双层el-dialog样式控制
  18. laravel8 改变分页样式
  19. 利用百分位数确定考核指标的具体数字
  20. pr值高的域名对网站有什么价值?

热门文章

  1. 【机器学习基本理论】详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解
  2. 人工智能改进传统云ERP的10种方法
  3. gitlab常用命令
  4. 《数学之美》第12章 有限状态机—地图与本地搜索的核心技术
  5. 源数据文件(.csv)中的空格串和空串对pandas读取结果的影响
  6. 用数学范畴定义生命的尝试
  7. 【前沿技术】2021年AI将改变制造业的6大应用趋势
  8. 数字化?智能化?中国企业智能制造现状究竟如何 李炳积 工信头条 昨天
  9. OpenAI最新论文:机器学习效率正在超越摩尔定律
  10. 回顾2018,正在改变未来游戏规则的技术