第一次写博客,记录自己的一些学习过程。
onTouch执行返回true,则不会执行onTouchEvent,且dispatchTouchEvent也会返回true
onTouchEvent返回true,则dispatchTouchEvent也会返回true
所以,onTouch先于onTouchEvent执行
onTouch表示事件触发的时机,onClick负责具体执行
事件传递顺序:
Activity 执行 dispatch down
view 执行 dispatch down
view 执行 onTouch down
view 执行 onTouchEvent down
Activity 执行 dispatch up
view 执行 dispatch up
view 执行 onTouch up
view 执行 onTouchEvent up
view 执行 onClick
界面执行事件分发(界面不执行onTouch事件)
控件执行事件分发
控件执行onTouch事件
控件执行onTouchEvent事件
最后再进行onClick,所以其间返回true,则表示事件消费,可用于拦截
dispatch 负责 onTouch ,onTouchEvent 负责 onClick