iOS开发 解决UITapGestureRecognizer手势与UITableView的点击事件的冲突
该篇文章摘自我的新浪博客,原文地址为: 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的点击事件的冲突相关推荐
- IOS开发基础之手势解锁项目案例
IOS开发基础之手势解锁项目案例 项目最终实现效果. 由于缺少红色的error背景图.我自己从安卓项目找到一个手势解锁,然后通过ps添加粉红色的红圈,才得以解决.为了分享给大家源码,github和本地 ...
- iOS开发UI篇—直接使用UITableView Controller
iOS开发UI篇-直接使用UITableView Controller 一.一般过程 1 // 2 // YYViewController.h 3 // UITableView Controller ...
- iOS开发UI篇-在UItableview中实现加载更多功能
iOS开发UI篇-在UItableview中实现加载更多功能 一.实现效果 点击加载更多按钮,出现一个加载图示,三秒钟后添加两条新的数据. 二.实现代码和说明 当在页面(视图部分)点击加载更多按钮的时 ...
- fastclick.js解决移动端(ipad)点击事件反应慢问题
fastclick.js解决移动端(ipad)点击事件反应慢问题 参考文章: (1)fastclick.js解决移动端(ipad)点击事件反应慢问题 (2)https://www.cnblogs.co ...
- iOS 开发商品详情页中的banner中点击查看图片
本文出自code4app,原文地址:http://www.code4app.com/blog-... 轮翻播放与查看是分开的,轮翻是是用 开源的SDCycleScrollView 这里是给出的是查看的 ...
- iOS给图片(其他view) 添加点击事件
iOS开发中有的时候需要给一些没有点击事件的view添加点击的方法, 比如说点击一个图片想触发某个方法该如何实现了 方法一 使用 UITapGestureRecognizer 具体的方法就是创建一个 ...
- iOS开发-UISwipeGestureRecognizer滑动手势
滑动手势也算是iOS中交互中很重要的一部分,上下左右滑动,UISwipeGestureRecognizer可以很轻松的解决这个问题,没什么难度直接看代码吧: UISwipeGestureRecogni ...
- iOS 开发 解决UICollectionView的多组头部视图样式不一样复用时发生错乱问题
UICollectionView用起来比UITableView麻烦多了,如何解决多组头部视图复用时出现的错乱问题就很关键 头部视图有几种样式就注册几种头部视图 // 防止cell和头部视图复用出现错乱 ...
- iOS开发之侧滑手势返回功能
废话 对于模态出来的viewcontroller,我们往往无法使用侧滑返回功能.但是我们都知道可以用dismiss去返回,不过对于大部分用户大大来说并不关心什么模态不模态的,我既然花了学习成本去熟悉你 ...
最新文章
- linux 阅读日志命令 tail
- python lib head,使用Python 2中的urllib2发出HTTP HEAD请求
- C++学习——类的多态
- github搜索技巧_和逛知乎、刷微博一样高效使用 GitHub
- C/C++:Windows编程—Windows RPC 传递自定义数据类型、自定义数据类型数组、指针数组
- php mysql 命令行模式_MySQL_MYSQL导入导出sql文件简析,一.MYSQL的命令行模式的设置- phpStudy...
- 鸿蒙系统微信红包,鸿蒙道红包版
- 静态代码块与构造函数的作用
- Python服务器管理模块psutil学习使用
- 【手写字母识别】基于matlab GUI ELMAN+BP神经网络手写大写字母(A-O)识别【含Matlab源码 785期】
- ubuntu16.04下 sublime text输入中文
- 企业并购方式及并购操作流程
- kettle使用命令行来运行ktr和kjb
- 为什么男人总是欺负你?
- FaceNet 人脸比对框架 部署+测试
- SD-WAN 与传统 WAN
- element ui的双层el-dialog样式控制
- laravel8 改变分页样式
- 利用百分位数确定考核指标的具体数字
- pr值高的域名对网站有什么价值?