博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UIScrollView中的UITableView接收不到点击事件
阅读量:7024 次
发布时间:2019-06-28

本文共 899 字,大约阅读时间需要 2 分钟。

hot3.png

一个UIScrollView中有若干个UITextfield,为了能在空白处点击能隐藏键盘,加了UITapGestureRecognizer事件,结果导致同样在UIScrollView里的UITableView接收不到didSelectRowAtIndexPath调用消息。

问题原因应该是UITapGestureRecognizer吞掉了touch事件,导致didSelectRowAtIndexPath方法无法响应。

里面说的将cancelsTouchesInView设置为NO没多大作用,最后是的方法解决了。

解决方法:重写UIGestureRecognizerDelegate中的

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch方法。

#pragma mark - UIGestureRecognizerDelegate  - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch  {      // 输出点击的view的类名      NSLog(@"%@", NSStringFromClass([touch.view class]));            // 若为UITableViewCellContentView(即点击了tableViewCell),则不截获Touch事件      if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {          return NO;      }      return  YES;  }

转载于:https://my.oschina.net/ioslighter/blog/388826

你可能感兴趣的文章
Css的transform和transition
查看>>
POJ1386Play on Words(欧拉回路)
查看>>
configparser 文件的生成和读写
查看>>
20个PHP程序性能优化的方法
查看>>
关于游戏平衡性工作内容——王者荣耀英雄伤害附录
查看>>
47种常见的浏览器兼容性问题大汇总
查看>>
数据结构与算法预热--线性表是什么?
查看>>
Winform自定义控件实例
查看>>
Siebel NextRecord And DeleteRecord In Loops Skips Record
查看>>
batch normalization在测试时的问题
查看>>
Python时间和日期
查看>>
【BZOJ4298】[ONTAK2015]Bajtocja
查看>>
为什么C语言中int的表示范围是-32768~32767
查看>>
有关位运算的基础知识和应用
查看>>
框架dubbox的简单使用
查看>>
codevs1163访问艺术馆 树形dp
查看>>
java获取登陆用户的IP地址
查看>>
JAVA线程控制
查看>>
Java关键字final、static使用总结
查看>>
转载-Objective-C内存管理详解(含示例代码)
查看>>