zoukankan      html  css  js  c++  java
  • UIGestureRecongnizer 手势拦截 对于特殊需求很有用

    手势其实也有代理方法的,通过代理方法可以做到更多关于手势方面的功能

    比如在下面的方法中,如果是UIButton的点击就阻止手势的点击事件。

    // called before touchesBegan:withEvent: is called on the gesture recognizer for a new touch. return NO to prevent the gesture recognizer from seeing this touch

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

    {

       if([touch.view iskindOfclass [UIButton class]]

    {

       return No;

    }

     return YES;

    }

     而且还可以做到使一个响应者的部分区域响应手势。

    比如点击手势加到了一个图片上,那么同样在  

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

    方法里面只要判断位置就行了,如图

     这个可以做到,被添加手势的那个控件只响应左侧的点击,而忽略右侧。

    那么问题来了,如何让一个按钮 或者被加了点击事件的imageview 左侧响应一个点击方法,右侧响应另一个点击方法(也就是说让一个控件的不同部位响应不同的方法),欢迎评论留言。

  • 相关阅读:
    vue-resource请求
    vue的生命周期
    Swift-多类型封装
    Swift
    Swift-structures 和 classes 初始化
    iOS-延时加载,延时初始化
    Swift-Closures
    WKWebView-填坑总结
    存档&&解档游戏状态
    循环引用 && weak strong
  • 原文地址:https://www.cnblogs.com/isItOk/p/6036533.html
Copyright © 2011-2022 走看看