ios-事件浅析

ios中的事件大致分为三大类,一个是触摸事件,一个是加速计事件比如说微信里面的摇一摇,还有一个是远程控制事件比如说你手机连上了耳机,耳机上可以调整音量。

ios中的响应者对象:在ios中不是任何的对象都可以处理事件,只有继承了UIResponder的对象才能接受并且处理事件,我们称之为"响应者对象"。

UIApplication、UIViewController、UIView都继承自UIResponder,所以它们都是响应者对象,都能够接受并且处理事件。其实比如说UITextField就是继承自UIControl,然后UIControl又继承UIView,UIView又继承UIResponder所以就可以接受和处理事件。也就是说只要继承了UIResponder的对象都是响应者对象。

触摸事件分为下面四个方法

-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event//手指接触到的时候调用
-(void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event//手指移动的时候调用
-(void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event//手指离开的时候调用
-(void)touchesCancelled:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event//意外的中断了,比如说来电话了
UITouch中的一些属性

timetamp指的是你点击屏幕所需的时间

phase是阶段,比如说你是在begin,还是move等等阶段

tapCount是快速点击的次数

window就是你触摸事件的响应者对象所在的window

view就是你触摸的那个view

还有两个方法

- (CGPoint)locationInView:(nullable UIView *)view;这个方法就是你基于某个坐标系的位置是多少,view就是你要参考的坐标系

- (CGPoint)previousLocationInView:(nullable UIView *)view;这个就是上一个点所在的位置,其实就是当前触摸的上一个点就等于你上一次触摸的当前点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值