iOS学习之—— UIGestureRecognizerState的简单了解
2016-05-20 14:53
441 查看
在 iPhone 或 iPad 的开发中,除了用 touchesBegan / touchesMoved / touchesEnded 这组方法来控制使用者的手指触控外,也可以用 UIGestureRecognizer 的衍生类別来进行判断。用 UIGestureRecognizer 的好处在于有现成的手势,开发者不用自己计算手指移动轨迹。
UIGestureRecognizerState的定义如下
typedef enum {
UIGestureRecognizerStatePossible,
UIGestureRecognizerStateBegan,
UIGestureRecognizerStateChanged,
UIGestureRecognizerStateEnded,
UIGestureRecognizerStateCancelled,
UIGestureRecognizerStateFailed,
UIGestureRecognizerStateRecognized = UIGestureRecognizerStateEnded
} UIGestureRecognizerState;
Possible: 识别器在未识别出它的手势,但可能会接收到触摸时处于这个状态。这是默认状态。
Began: 识别器接收到触摸并识别出是它的手势时处于这个状态。响应方法将在下个循环步骤中被调用。
Changed:the recognizer has received touches recognized as a change to the gesture. (不懂怎么翻译,理解上就是识别器识别出一个变化为它的手势的触摸),响应方法将在下个循环步骤中被调用。
Ended:识别器在识别到作为当前手势结束信号的触摸时处于这个状态。响应方法将在下个循环步骤中被调用 并且 识别器将重置为possible状态。
Cancelled:识别器处于取消状态。响应方法将在下个循环步骤中被调用并且识别器将重置为possible状态。
Failed: 识别器接收到不能识别为它的手势的一系列触摸。响应方法不会被调用并且识别器将重置为possible状态。
Recognized:识别器已识别到它的手势。响应方法将在下个循环步骤中被调用并且识别器将重置为possible状态。
UIGestureRecognizerState的定义如下
typedef enum {
UIGestureRecognizerStatePossible,
UIGestureRecognizerStateBegan,
UIGestureRecognizerStateChanged,
UIGestureRecognizerStateEnded,
UIGestureRecognizerStateCancelled,
UIGestureRecognizerStateFailed,
UIGestureRecognizerStateRecognized = UIGestureRecognizerStateEnded
} UIGestureRecognizerState;
Possible: 识别器在未识别出它的手势,但可能会接收到触摸时处于这个状态。这是默认状态。
Began: 识别器接收到触摸并识别出是它的手势时处于这个状态。响应方法将在下个循环步骤中被调用。
Changed:the recognizer has received touches recognized as a change to the gesture. (不懂怎么翻译,理解上就是识别器识别出一个变化为它的手势的触摸),响应方法将在下个循环步骤中被调用。
Ended:识别器在识别到作为当前手势结束信号的触摸时处于这个状态。响应方法将在下个循环步骤中被调用 并且 识别器将重置为possible状态。
Cancelled:识别器处于取消状态。响应方法将在下个循环步骤中被调用并且识别器将重置为possible状态。
Failed: 识别器接收到不能识别为它的手势的一系列触摸。响应方法不会被调用并且识别器将重置为possible状态。
Recognized:识别器已识别到它的手势。响应方法将在下个循环步骤中被调用并且识别器将重置为possible状态。
相关文章推荐
- iOS学习之——改变UITabBarController中当前显示的viewController
- Flex builder3 调试弹出窗口Flex builder cannot locate the required version of Flash Player解决办法
- UI
- Android Studio在连接手机时候,出现"Instant Run requires 'Tools..."不能安装软件的问题
- Java--获取request中所有参数的方法
- iOS学习之—— UIVisualEffectView
- mybatis 数据库表中外键关系存在时 useGeneratedKeys="true" keyProperty="id"
- layer-layui
- Xcode7 UITest UnitTest 自动化测试学习
- 设置字符串中某一字为不同的颜色
- Android UI性能优化实战 识别绘制中的性能问题。解决CPU绘制过度
- request参数获取的几种方式
- 让UITableView的headerview不悬停的方法
- UE4中FName,Fstring,FText使用规则及相互转换
- scala:Guides and Overviews阅读笔记之一 -- Mutable and Immutable Collections
- surface 其实是UEFI与BIOS并存,借用官网的进入方法(少有更改)
- Surface Pro 4 和 Surface Book 使用名为 Surface UEFI(统一可扩展固件接口)的新固件接口
- 【Arduino官方教程第一辑】示例程序 4-11 虚拟调色盘
- android release build error: String index out of range: -125
- Solr源码解析之一 -- 查询解析器QueryParser