IOS 手势与Button事件互不影响

原创 2013年12月03日 18:27:34
1、首先在.h 头文件中添加<UIGestureRecognizerDelegate>委托
2、在.m 体文件中添加实现该委托的方法
#pragma mark - UIGestureRecognizerDelegate

// 当一个事件判定为是一个手势时,先进入手势代理方法。该方法中判断点击的视图是不是button如果是button则返回NO,手势不响应该事件,既然没响应,也不会取消该事件的传递。则button会接收到该事件,并作处理;方法二是判断点击位置与button位置是否重合,如果有重合,则表明点击了button

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
    
    // 判断是不是UIButton的类
    if ([touch.view isKindOfClass:[UIButton class]])
    {
        return NO;
    }
    else
    {
        return YES;
    }
    //方法二,判断点击的位置
    //CGPoint location = [touch locationInView:self.view];
    /*
    if(CGRectContainsPoint(self.btn.frame, location))
    {
        [self GoOtherView:nil];
        return NO;
    }else{
        return YES;
    }
     */
}





版权声明:本文为博主原创文章,未经博主允许不得转载。

UIView上添加了一个按钮和一个单击手势的事件相应,互相不影响的处理方法。。

tapGesture.delegate = self; - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shou...
  • vieri_ch
  • vieri_ch
  • 2013年08月29日 23:52
  • 4176

【iOS】Button点击事件被其父视图点击手势UITapGestureRecognizer的屏蔽问题

前几天在做项目的时候,遇到这个一个问题,在一个视图也就是UIView上添加一个手势,然后又在这个View上添加一个UIButton,然后给按钮添加事件,运行项目的时候我发现,不管是点击按钮还是视图上的...
  • HardworkingBee
  • HardworkingBee
  • 2015年05月21日 17:39
  • 3533

手势和UI控件之间冲突的解决方法(比如UITapGesture和UIButton冲突,UIPanGesture和UISlider冲突)

经过实验发现iOS5和iOS6里面,轻点手势和按钮的点击冲突机制是不同的,结果如下: 一个UIView上如果添加了一个按钮,又添加了Tap手势 在iOS5的设备上跑会只响应Tap手...
  • xcysuccess3
  • xcysuccess3
  • 2014年10月09日 10:39
  • 24003

事件的独立和事件互不相容两个概念的区别

实在是对这个感冒了,随从网上拉了一篇资料,免得下次又忘了。 要真正的解决这个问题,必须首先牢牢记住他们的定义。 什么事件的独立? 事件A,B独立是指这两个事件之间的概率满足一个等式:P(AB)=...
  • zyf837368104
  • zyf837368104
  • 2011年12月22日 22:51
  • 45609

事件的互不相容和独立的区别

在学习概率论与数理统计的过程中对互不相容和独立的概念有些混淆,经过网上搜索资料和理解,两者考虑的角度不同,总结如下: 1. 互不相容考虑的是事件是否能同时发生。A和B互不相容的意思是A发生B就不可能...
  • a540366413
  • a540366413
  • 2017年04月01日 16:13
  • 805

UIScrollView和Button中手势冲突

思路:在UIScrollView中设置手势监听。通过找到手势的位置确定是否点击了Button1、为UIScrollView设置手势UITapGestureRecognizer *tap = [[UIT...
  • TaLinBoy
  • TaLinBoy
  • 2017年05月16日 15:15
  • 353

view上添加点手势 button无法响应点击事件

在view 上添加手势 有的时候  会把button的 点击事件盖掉,这个 时候 我们用UITapGestureRecognizer的代理方法 //手势的代理方法 - (BOOL)gest...
  • u013682799
  • u013682799
  • 2014年09月10日 13:26
  • 1030

手势事件与TableViewCell点击事件冲突

当一个view上面既有UITapGestureRecognizer 又有其他view的点击响应事件的时候,这时候就可能造成冲突.我们可以通过获取UITouch点击的view是属于哪个view 来判断是...
  • a5843413
  • a5843413
  • 2016年04月14日 22:10
  • 6432

这个坑,你遇到过吗?关于UIView上添加一个手势,导致子视图为UIButton的无法响应的问题

问题描述: 1.view上添加了一个UITapGestureRecognizer 2.view上添加了一个button 3.在iOS 6.0+上测试一切正常,在ios5.0(5.1)上UIBut...
  • zyq527758142
  • zyq527758142
  • 2014年03月17日 10:35
  • 2258

侧滑手势与UIScrollView滚动手势冲突解决

相信很多人都有这个困扰,UINavigationController的侧滑手势与UIScrollView滚动手势冲突,导致侧滑返回与scrollview的滚动手势不能共存。 其实解决这个问题很简...
  • peacewanghp
  • peacewanghp
  • 2016年02月18日 11:46
  • 1293
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IOS 手势与Button事件互不影响
举报原因:
原因补充:

(最多只允许输入30个字)