美文网首页
iOS 响应者链

iOS 响应者链

作者: 通哥 | 来源:发表于2019-05-31 14:24 被阅读0次
UIView响应事件满足的调节
1. userInteractionEnabled=YES,该属性表示允许控件同用户交互
2. hidden = NO;
3. alpha > 0.01;

iOS接收到触摸事件, 首先打包成UIEvent对象放到UIApplication中,UIApplication会从事件队列中取出触摸事件并传递给UIWindow;

  1. 当用户手指触摸到屏幕莫一区域时, UIWindow查找其子控件, 然后调用所有子控件的方法
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event

来通过指定的触摸点获取最合适的UIView来处理该触摸事件. 通过调用下面方法

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event

判断触摸点是否在子控件区域内,如果返回时YES, 则重复操作,直到找到最上合适的View

总结 : 先把触摸事件打包放到UIApplication中, 然后通过UIApplication传递到UIWindow中, 然后调用两个方法去判断触摸点在UIwindow中的子控件, 同时判断子控件是否满足触摸时间的调节,从下至上一次调用判断, 直到找到合适的VIew.

相关文章

  • iOS 响应链

    iOS开发 - 事件传递响应链iOS 响应者链,事件的传递事件传递之响应链Cocoa Touch事件处理流程--响...

  • iOS响应者链

    iOS响应者链

  • ios响应者链

    iOS 响应者链 字数418 阅读41 评论0 喜欢3 响应者链 响应者链是一个响应者的连接序列,事件或者动作消息...

  • iOS UI事件传递与响应者链

    iOS UI事件传递与响应者链 响应者链 响应者对象:继承自UIResponder的对象称之为响应者对象。UIAp...

  • 转载:响应者链工作原理

    响应者链 响应者链是由一个一个响应者组成的长链;响应者链定义了iOS中触摸事件的交互规则;如果hit-test检测...

  • 事件的分发和传递

    响应者: 在iOS中,响应者为能响应事件的UIResponder子类对象,如UIButton、UIView等。 响...

  • iOS中对于响应链的理解

    对于响应链的理解: 在IOS中,有响应者链对事件进行响应,所有的响应类都是UIResponder的子类,响应者链是...

  • 二、事件传递链和响应者链

    iOS触摸事件详解iOS开发-事件传递响应链 响应者链 UIResponser包括了各种Touch message...

  • iOS 响应者链

    一个目前最新最全的分析 iOS事件处理,看我就够了~ 对响应者链机制的图文分析 深入浅出iOS事件机制 对响应者链...

  • iOS基础篇-事件处理

    1、首先需要理解iOS事件处理机制 理解事件处理、响应者、响应者链概念https://developer.appl...

网友评论

      本文标题:iOS 响应者链

      本文链接:https://www.haomeiwen.com/subject/yjiwtctx.html