您的位置:首页 > 产品设计 > UI/UE

UIEvent

2015-08-24 22:07 465 查看
一、事件

分三类:触摸事件,晃动事件,远程控制事件

二、触摸事件

触摸对应的UI类是UITouc

1,UIView (继承自UIResponder)支持触摸事件。

2,我们往往要定义UIView的子类来实现触摸的相关方法。

原因是对UIView只能看到其.h文件,看不到.m文件,要实现触摸事件,必须要重写其四个方法: touches..began、touches..moved、touches...ended、 touches..canceled来实现我们自己想要的反应行为。

三、响应者链

1,检测顺序:UIApplication -> window -> viewController -> view -> 检测所有⼦视图。

2,处理事件的顺序:触摸的⼦视图 -> view -> viewController -> window -> UIApplication。

四、具体的一些常用API

UITouch *touch=[touches anyObject];

//取得当前位置

1, CGPoint current=[touch locationInView:self.superview];

//取得前一个位置

2, CGPoint previous=[touch previousLocationInView:self.superview];

五、注意事项

响应者链可以被打断,使其⽆法完成检测查询过程。 视图类的属性 userInteractionEnabled 关闭后能阻断查询过程。

1, 在UI中,基本上所有的控件的用户交互都是打开的,但是也有一些特例:如lable,imageView

2, userInteractionEmabled 这个属性是影响响应者连的检测过程。如果一个lable或imageView的此属性没有设置为YES的话,其子控件就不会监测此过程。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: