Android:事件分发机制

相关文章:

Android面试题(27)-android的事件分发机制

面试:讲讲 Android 的事件分发机制  (更易懂)

Android事件分发机制详解:史上最全面、最易懂

Android View 事件分发机制 源码解析 (上) (鸿洋大神的,晦涩)

简述事件分发机制:

三个对象:Activity、ViewGroup、View。一个事件产生之后,都是先传给Activity,在传给ViewGroup,最后传给View。

三个方法:dispatchTouchEvent()、onInterceptTouchEvent()、onTouchEvent()

接下来进行流程分析,我们就以点击事件为例:

当用户点击了屏幕,首先Activity先监测到,事件先传递到Activity中,Activity通过它的dispatchTouchEvent将事件分发到ViewGroup,ViewGroup如果不拦截事件,那么就会继续下传到View,View是最底层控件,不会有onInterceptTouchEvent,它的选择就只有处理后不处理,处理就在onTouchEvent进行处理并返回true,不处理的话事件也不会被销毁,View这时会把事件回传,经过上述流程后回传给activity,如果Activity还不处理,那么这个事件才会被销毁;


 

猜你喜欢

转载自blog.csdn.net/songzi1228/article/details/88233709