iOS UITouch对象的作用与常见属性?
发布于 2020-01-12 22:12:50
关注者
0
被浏览
515
1 个回答
-
当用户用一根手指触摸屏幕时,会创建一个与手指相关联的UITouch对象 一根手指对应一个UITouch对象
UITouch的作用:
- 保存着跟手指相关的信息,比如触摸的位置、时间、阶段
- 当手指移动时,系统会更新同一个UITouch对象,使之能够一直保存该手指在的触摸位置
- 当手指离开屏幕时,系统会销毁相应的UITouch对象
UITouch的常见属性
//触摸产生时所处的窗口 @property(nonatomic,readonly,retain) UIWindow *window; //触摸产生时所处的视图 @property(nonatomic,readonly,retain) UIView *view; //短时间内点按屏幕的次数,可以根据tapCount判断单击、双击或更多的点击 @property(nonatomic,readonly) NSUInteger tapCount; //记录了触摸事件产生或变化时的时间,单位是秒 @property(nonatomic,readonly) NSTimeInterval timestamp; //当前触摸事件所处的状态 @property(nonatomic,readonly) UITouchPhase phase;
UITouch的常见方法
//返回值表示触摸在view上的位置 //这里返回的位置是针对view的坐标系的(以view的左上角为原点(0, 0)) //调用时传入的view参数为nil的话,返回的是触摸点在UIWindow的位置 - (CGPoint)locationInView:(UIView *)view; // 该方法记录了前一个触摸点的位置 - (CGPoint)previousLocationInView:(UIView *)view;