读书笔记---触摸事件与手势识别
来源:互联网 发布:cc网络验证模块源码 编辑:程序博客网 时间:2024/04/19 18:34
UIView和UIViewController都集成了响应者对象的基类UIResponder,UIResponder定义了4个与触摸事件相关的方法
<span style="font-size:18px;"><span style="font-size:18px;">- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event; - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event; - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event; - (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event;</span></span>
如果在一个视图对象上进行手势识别,可以在这个视图对象上或者是他的视图控制器上重写这4个方法.
iOS设备中能够捕获的事件有3种:触摸事件,移动事件和多媒体远程控制事件
触摸事件是通过设备的触摸屏采集信息,移动事件是通过设备上的重力加速计和陀螺仪采集信息的,多媒体远程控制需要外界iOS扩展设备才能采集.
UIEvent 是封装这三种类型的事件类,一个UIEvent对象表示一个事件,事件中对象包含与当前多点触摸序列相对应的所有出没对象(UITouch),可以通过下面方法获得
<span style="font-size:18px;">- (NSSet *)allTouches;- (NSSet *)touchesForWindow:(UIWindow *)window;- (NSSet *)touchesForView:(UIView *)view;</span>
触摸(UITouch)对象还包括当前所在视图或窗口中的位置信息,以及之前的位置信息(如果有的话),下面的方法可以获得之前的位置信息
<span style="font-size:18px;">- (CGPoint)previousLocationInView:(UIView *)view:</span>
该方法记录了前一个坐标值,函数返回也是一个CGPoint类型的值, 表示触摸在view这个视图上的位置,这里返回的位置是针对view的坐标系的。调用时传入的view参数为空的话,返回的时触摸点在整个窗口的位置。
当一个手指接触屏幕时,触摸就和某个窗口或视图关联在一起,这个关联在事件的整个生命周期都会得到维护,下面的方法是可以获得触摸点所在窗口或视图中的位置
<span style="font-size:18px;">- (CGPoint)locationInView:(UIView *)view://函数返回一个CGPoint类型的值,表示触摸在view这个视图上的位置,这里返回的位置是针对view的坐标系的。调用时传入的view参数为空的话,返回的时触摸点在整个窗口的位置</span>
评论:看完这一章有点小失望,也就后面那个用touch重写pinch的方法还可以看看,而且竟然没有hitTest:withEvent和pointInside:withEvent的介绍,让我实在觉得有点水,不管如何,我算是看完了相应的文章也贴出我自己之前的总结,总结里也有相应的链接,大家可以去看看
iOS中事件响应的学习记录
更多干货,请支持原作:http://item.jd.com/11436547.html
0 0
- 读书笔记---触摸事件与手势识别
- 触摸事件与手势识别1
- iOS触摸事件与手势识别详解
- 手势识别、触摸事件 知识点
- 触摸与手势-----事件
- 触摸与手势事件
- Android事件处理之多点触摸与手势识别
- Android事件处理之多点触摸与手势识别
- Android事件处理之多点触摸与手势识别
- ios自用学习笔记-触摸事件与手势识别
- Android事件处理之多点触摸与手势识别
- 手势识别(五)触摸事件与手势识别重要知识点
- IOS 触摸事件、手势识别讲解
- ios触摸事件和手势识别
- 学习笔记 - 触摸事件&手势识别
- JavaScript触摸与手势事件
- JavaScript触摸与手势事件
- iOS触摸事件与手势
- Wind咨讯南京高校算法竞赛试题:输入ID号,提取出生日期
- HDFS2.2.0集群的HA高可靠配置
- 各个版本的iphone QQ
- 信号处理函数sigaction()
- 【android】关于getBaseContext();this等-----项目中遇到的问题
- 读书笔记---触摸事件与手势识别
- 数据结构之顺序链表
- 哈哈哈哈哈
- 数据结构学习笔记-排序2
- linux下的stdin,stdout,stderr详解
- linux编程中显示文件名,函数名,行号
- win7-Wmvare 上安装 64 位linux
- JDBC操作
- addSubview和insertSubview 区别