美文网首页
onTouch事件分发

onTouch事件分发

作者: 淹死丶的鱼 | 来源:发表于2019-12-12 11:59 被阅读0次
手指按下的时候ViewGroup 会调用dispatchTouchEvent-> image.png

接着就执行了


image.png
image.png
走到了子View的dispatchTouchEvent->会调用onTouchEvent如果返回为false的话result是不会等于true的

返回值就是false


image.png
image.png

关键来了-> 如果子View
dispatchTouchEvent返回false 父布局dispatchTransformedTouchEvent也返回false
dispatchTouchEvent里面的的 newTouchTarget = addTouchTarget(child, idBitsToAssign);就不会执行下面的 if(mFirstTouchTarget != null)的判断都不会走
下一次进来的时候 因为mFirstTouchTarget ==null 而且不是按下事件intercepted=true


image.png

再往下走因为 !intercepted = false进不了下面的判断
里面的for循化 事件分发等都不会执行 所以onTouchEvent就不会执行


image.png

相关文章

网友评论

      本文标题:onTouch事件分发

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