UITapGestureRecognizer会屏蔽掉Button的点击事件
来源:互联网 发布:岂凡网络怎么样 编辑:程序博客网 时间:2024/04/30 11:49
前几天在做项目的时候,遇到这个一个问题,在一个视图也就是UIView上添加一个手势,然后又在这个View上添加一个UIButton,然后给按钮添加事件,运行项目的时候我发现,不管是点击按钮还是视图上的别的地方执行的都是手势所拥有的方法,后来到网上找才发现是手势把按钮的方法给屏蔽了,那怎么解决了正确的方法是给手势设置代理,然后在代理中进行判断如果点击事件是由Button执行的,那就不执行手势,那么系统会调用按钮所拥有的方法。具体的如下:
- UIView* showListView=[[UIView alloc] i nitWithFrame:[[UIScreen mainScreen] bounds]];
- UITapGestureRecognizer* showTap=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(showGes:)];
- showTap.delegate=self;//设置代理
- [showListView addGestureRecognizer:showTap];
- [showTap release];
- UIButton* btn=[UIButton buttonWithType:UIButtonTypeCustom];
- btn.frame=CGRectMake(100.0,200.0,100.0,35.0);
- [btn addTarget:self action:@selector(coverViewChoose:) forControlEvents:UIControlEventTouchUpInside];
- [showListView addSubView:btn];
最重要的就是下面了:
- #pragma mark--
- #pragma mark--UIGestureRecognizerDelegate
- -(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
- {
- if([touch.view isKindOfClass:[UIButton class]])
- {
- return NO;
- }
- return YES;
- }
0 0
- UITapGestureRecognizer会屏蔽掉Button的点击事件
- UITapGestureRecognizer会屏蔽掉Button的点击事件
- UITapGestureRecognizer会屏蔽掉Button的点击事件
- 【iOS】Button点击事件被其父视图点击手势UITapGestureRecognizer的屏蔽问题
- 关于UITapGestureRecognizer屏蔽Button的处理
- ListView中的item,如果有button控件,则会屏蔽item的点击事件
- Button的点击事件
- Button的点击事件
- Button的点击事件
- Button的点击事件
- android ListView的OnItemClickListener事件被其内部Button点击事件屏蔽的解决方法
- ImageButton和Button不设置点击事件也会拦截父View的点击事件
- UIImageview 点击事件 UITapGestureRecognizer传值
- UIImageview 点击事件 UITapGestureRecognizer传值
- IOS 使用自定义手势屏蔽按钮解决方法/UITapGestureRecognizer屏蔽Button
- IOS 使用自定义手势屏蔽按钮解决方法/UITapGestureRecognizer屏蔽Button
- IOS 使用自定义手势屏蔽按钮解决方法/UITapGestureRecognizer屏蔽Button
- UITapGestureRecognizer和UIButton的点击事件冲突的解决办法
- uva1658 Admiral 最小费用最大流
- 念数字
- [JAVA加解密]对登陆密码及网络传输内容加密
- android 的ListView中,判断其已滚动到最顶部或者最底部?
- java在JFrame里 this.setIconImage((new ImageIcon("image\\qq.jpg")).getImage());
- UITapGestureRecognizer会屏蔽掉Button的点击事件
- Hbase 学习笔记(二): 高级模块
- UNIX环境C语言编程(13)-高级进程间通信
- 快速重建数据库(sqlserver)------可能很少情况下会用到
- 基于ARM Cortex A9核心Rayeager PX2开发板电路图
- T_SQL rowtype类型
- Hbase 学习笔记(三):管理模块
- JavaScript 事件绑定
- 关于字符集的问题