Open
Description
响应链构建过程 Hit-Testing
事件响应流程
Touch 事件处理的传递过程与 Hit-Testing 过程正好相反。Hit-Tesing 过程是从父视图到子视图遍历;Touch 事件处理传递是从子视图到父视图传递。 首先Touch事件会被发送到first responder,first responder便拥有了对事件的绝对控制权:它可以选择独吞这个事件,也可以将这个事件往下传递给其他响应者.
整个过程如下所示:
* 如果当前view是控制器的RootView,那么控制器就是nextResponder,事件就传递给控制器.
* 如果当前view不是控制器的RootView,那么父视图就是当前view的nextResponder,事件就传递给它的父视图.
* 在视图层次结构的最顶级视图,如果也不能处理收到的事件或消息,则其将事件或消息传递给window对象进行处理.
* 如果window对象也不处理,则其将事件或消息传递给UIApplication对象.
* 如果UIApplication也不能处理该事件或消息,则将其丢弃
Metadata
Metadata
Assignees
Labels
No labels
Activity