美文网首页iOS技术
iOS UIView的事件传递与响应链

iOS UIView的事件传递与响应链

作者: init_Solar | 来源:发表于2020-02-18 12:43 被阅读0次

    事件传递过程

    点击屏幕->UIApplication->UIWindow->hitTest:withEvent:->pointInside:withEvent:->父视图/控制器的子视图(Subviews)->UIView->hit = [sub hitTest:p withEvent:];

    视图的响应链

    如果hitTest:withEvent:找到了第一响应者initial view,但是该响应者没有处理该事件,那么事件会沿着响应者链向上传递:第一响应者 -> 父视图 -> 视图控制器,如果传递到最顶级视图还没处理事件,那么就传递给UIWindow去处理,若window对象也不处理那么就交给UIApplication处理,如果UIApplication对象还不处理,就丢弃该事件.(转自参考链接1)

    参考链接1
    参考链接2
    参考链接3
    参考链接4

    相关文章

      网友评论

        本文标题:iOS UIView的事件传递与响应链

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