美文网首页
iOS响应链和控件手势

iOS响应链和控件手势

作者: 金天动地 | 来源:发表于2021-03-09 01:28 被阅读0次

    1. 找到第一响应者,从视图最底层UIWindow到根视图和其子视图。通常通过hitTest:withEvent和pointInside:withEven:方法,前者是判断是在那个视图,后者判断是否在这个视图上。遍历子视图是从顶层到底层遍历的.(判断是哪个视图能处理响应)

    2.A视图有子视图B,B有子视图按钮C。调用方法如下A->B->C->A(hitTest:withEvent和pointInside:withEven:方发)然后按钮C touchBegin->touchEnd->BtnAction方法,target-action是由应用直接发送的.

    3.如第二种情况排列和上面一种情况一样.点击B但是A有Tap手势A->B->C->A(hitTest:withEvent和pointInside:withEven:方发 然后A视图执行手势shouldRecivePress和手势失败的方法 然后B视图touchBegin->A手势开始的方法然后执行点击手势->B视图touchCanceled

    4. A视图有子视图B,C, D,其中C有点击手势,点击C视图.但是响应链没有经过C,所以如下A->D->A(hitTest:withEvent和pointInside:withEven:方发)然后D视图touchBegin->touchEnd->方法

    相关文章

      网友评论

          本文标题:iOS响应链和控件手势

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