dispatchTouchEvent() 返回true 消费事件
dispatchTouchEvent() 返回false 不分发事件 由上层OnTouchEvent()处理
dispatchTouchEvent() 返回super 默认逻辑向下分发事件
onTouchEvent() 返回true 消费事件
onTouchEvent() 返回false 向上回溯事件,交由上层onTouchEvent()处理
onTouchEvent() 返回super 默认逻辑向上回溯事件,交由上层onTouchEvent()处理
onInterceptTouchEvent() 返回true 拦截事件,交由拦截该事件的ViewGroup的onTouchEvent() 处理。
onInterceptTouchEvent() 返回false 不拦截事件,向下执行子View的dispatchTouchEvent()。
onInterceptTouchEvent() 返回super 默认逻辑不拦截事件,向下执行子View的dispatchTouchEvent()。
特例Activity 由于Activity是事件的最上层
dispatchTouchEvent() 返回false 直接消费处理
onTouchEvent() 返回false 事件消失
本文深入解析了Android中触摸事件的分发机制,详细解释了dispatchTouchEvent(), onTouchEvent(), onInterceptTouchEvent()等方法的返回值含义及其对事件流向的影响,特别指出Activity在事件分发中的特殊地位。
861

被折叠的 条评论
为什么被折叠?



