Android事件分发与处理简单整理

在上一家公司接手了一个项目,由于界面交互的复杂性让我花了很多时间去对Android的事件分发与处理机制做了一个相对比较深的研究。在此记录一下。

事件 返回 传递or消费
super.dispatchTouchEvent 当前View的onInterceptTouchEvent
dispatchTouchEvent true 当前View的dispatchTouchEvent消费,停止传递
false 事件来自Activity,返回Activity消费;事件来自父View,返回父View消费
super.onInterceptTouchEvent 事件拦截,交给当前View的onTouchEvent消费
onInterceptTouchEvent true 同上
false 事件传递,交给子View的dispatchTouchEvent
super.onTouchEvent 事件返回上层View的onTouchEvent处理
onTouchEvent true 接收消费
false 同super.onTouchEvent

另View的监听事件

事件 返回 传递or消费
onTouch true onTouchEvent不再执行
false onTouchEvent可执行

你可能感兴趣的:(Android基础)