Android面试题:Scrollview内嵌一个Button他的事件消费是怎样的?Move,Down,Up分别被哪个组件消费?

问题来源

这是字节面试官问的,当时答的不是很好,准备不充分,只能讲了下Android的事件分发机制。

消费顺序

Button消费了几个Move事件后,接下来的Move都被Scrollview消费了

代码解读

在Scrollview的源代码里,可以看到onInterceptTouchEvent方法中,当判断到开始拖动Move事件就被Scrollview消费,不再分发给子View。也就可以解释为什么Button消费了几个Move之后被父View取消。

 

原文地址:https://www.cnblogs.com/billshen/p/13267337.html