ACTION_DOWN事件分发,首先是activity接收到,然后是viewgroup接收,最后是view接收。
Activity(onDispatchEvent)return true,false.(消费)
return super.onDispatchEvent(). (不消费继续往下传递事件)
ViewGroup (onDispatchEvent) return true(消费)
return false.---->Activit.onTouchEvent().(返回false表示老子不干了,还给你activity)
return super.onDispatchEvent()(表示 按照计划进行往下传递)---->ViewGroup.onIntercepterEvent().
ViewGroup.onIntercepterEvent() return true(消费)
---->ViewGroup.onTouchEvent() return true;消费
return false,super.onTouchEvent();(表示老子不干了,还给你activity)---->Activit.onTouchEvent().
ViewGroup.onInterceptEvent() return false,super.onInterceptEvent();(表示 按照原计划继续往下传递事件)
View.onDispatchEvent() retrun true (消费)
return false;(表示老子不干了,还给你ViewGroup.onTouchEvent() )
return super.onDispatchEvent()--->(表示 按照原计划继续往下传递事件)
----> onTouchEvent() return true;(消费)
return false,super.onTouchEvent()(表示老子不干了,还给你ViewGroup.onTouchEvent())
参考:https://www.jianshu.com/p/e99b5e8bd67b?url_type=39&object_type=webpage&pos=1#