最近使用UIPanGestureRecognizer手势时遇到一个问题,就是想获取起始的触摸点,但UIPanGestureRecognizer手势需要滑动一点距离时,才会触发,那样获取的起始点不太准确。然后就想到了

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

这个方法,但这个方法还是有个缺点,就是开始触摸时,需要稍微停顿一下才会触发,如果你轻扫的话,就不会调用,显然效果不太理想。

那我们可以继承UIPanGestureRecognizer,然后重写UIPanGestureRecognizer的

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

方法,然后调用父类的touchesBegan方法就可以了,代码片段如下:

#import "ImmediatePanGestureRecognizer.h"
#import <UIKit/UIGestureRecognizerSubclass.h>@implementation ImmediatePanGestureRecognizer- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {[super touchesBegan:touches withEvent:event];self.state = UIGestureRecognizerStateBegan;
}@end

你也可以从上面的重写方法中,直接得到point

  UITouch *touch=[touches anyObject];CGPoint  startPoint =[touch locationInView:touch.view];

参考自:
http://stackoverflow.com/questions/17621402/uipangesturerecognizer-do-something-immediately-when-touched

关于使用UIPanGestureRecognizer手势touchesBegan不调用的问题相关推荐

  1. ios pan手势滑动消失动画_IOS UIPanGestureRecognizer手势使用及识别状态UIGestureRecognizerState...

    UIGestureRecognizerState -- 手势识别器状态 1.先来看官方文档 定义UIGestureRecognizer.h 英文: typedef NS_ENUM(NSInteger, ...

  2. iOS开发 UIPanGestureRecognizer手势抽象类

    UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@sel ...

  3. UISlider 延迟调用touchesBegan,延迟调用valueChangeHandle。delay?

    今天遇到一个体验问题.播放器的UISlider的thumbImage在拖拽后不是立即响应,而是等了0.3或0.5或1秒后才响应.(如何扩大thumbImage的响应区域,可百度).如图所示: 虽然hi ...

  4. ios事件-触摸事件2(手势 和 pointInSide()、hitTest()、touchesBegan()、touchesMoved()、touchesEnded()的关系)

    ios事件-触摸事件2(手势 和 pointInSide().hitTest().touchesBegan().touchesMoved().touchesEnded().touchesCancell ...

  5. UIGestureRecognizer手势介绍

    UIGestureRecognizer是处理手势的一个抽象类,可以使用系统定义的手势或者自定义手势识别,是响应触摸事件的三大方式之一. UIGestureRecognizer常用子类 点击手势:UIT ...

  6. iOS 如何先由子视图处理子手势后再交由父类

    项目中,要在UITableViewCell中处理touchesBegan的手势,又要处理TableView中处理委托方法 didSelectRowAtIndexPath, 如果在UITableView ...

  7. 【手势隔层透传】iOS viewA被viewB遮挡,如何让viewA依然响应添加的pan平移手势

    目录 实践 参考 系统响应阶段 APP响应触摸事件 触摸 事件 响应者 触摸 触摸事件 响应者 寻找最佳响应者(Hit-Testing) 视图如何判断自己能否响应触摸事件? 寻找最佳响应者的原理 hi ...

  8. 【Android 应用开发】 自定义组件 宽高适配方法, 手势监听器操作组件, 回调接口维护策略, 绘制方法分析 -- 基于 WheelView 组件分析自定义组件

    博客地址 : http://blog.csdn.net/shulianghan/article/details/41520569 代码下载 : -- GitHub : https://github.c ...

  9. SwiftUI 手势操作

    基本概念 在ios中我们经常用到的手势操作有点击,长按,拖拽,缩放,旋转.在手势操作时,不同的手势有不同的触发函数,比如,点击在点击完成时触发某个函数,拖拽手势不仅仅在拖拽完成时触发函数,而在拖拽的过 ...

最新文章

  1. linux bash输入输出重定向
  2. 管理的最高境界:残缺中的和谐
  3. 雷林鹏分享:PHP 5 Directory 函数
  4. 深入理解WMS(二):Dialog与Toast源码解析
  5. ZooKeeper Watch Java API浅析getChildren
  6. JavaScript为什么使用原型模式而不是类模式
  7. 第11届 蓝桥杯-第1、2次模拟(软件类)真题-(2020年3月、4月)-官方讲解视频
  8. oracle 启用闪回数据库,如何启用Oracle10g闪回数据库特性
  9. mini2440-Openwrt启动信息
  10. less入门及基础学习(建议有css基础)
  11. mysql数据库内存分配_MySQL OOM 系列一 Linux内存分配
  12. Code Signal_练习题_evenDigitsOnly
  13. Raspbian 2019-06-20 发布
  14. web前端期末大作业 HTML+CSS+JavaScript仿安踏
  15. C语言基础 入门学习(一)
  16. arm9有多少个寄存器
  17. Process finished with exit code -1073740791 (0xC0000409) 一种解决方案
  18. 创建内嵌SIS文件的安装包
  19. BlueTooth: 蓝牙基带数据传输机理分析
  20. MFC CListCtrl修改表头字体、字体颜色、背景颜色、字体垂直居中、表头高度

热门文章

  1. 矩阵的归一化函数C语言,分别使用C语言和Python实现矩阵归一化
  2. 计算机d盘d桌面不见了,win10 突然D盘不见了怎么办 D盘分区消失的恢复方法
  3. C++遍历结构体数组并赋值
  4. android 4g手机6,6.8英寸旗舰领衔 海信今推出6款4G手机
  5. 你所不知道的按位运算
  6. Python生成带文字的二维码
  7. iPhone12连5G耗电快
  8. 【译】为GatsbyJS选择一个合适的后端
  9. TIA博途SCL编程学习4_选择法排序
  10. ios分屏_iPadOS 全新侧拉和分屏浏览功能怎么用?