Android事件分發詳解一(View)

Android View事件分發流程

一、概述
view分發流程
1.dispatchTouchEvent();
2.onTouchListener();
3.onTouchEvent();
4.onClickListener();

二、源碼解析
1.來看看View的dispatchTouchEvent方法的源碼:
這裏寫圖片描述
上圖中很明顯先判斷了mOnTouchListener.onTouch()方法的返回值,如果返回true,那麼dispatchTouchEvent不在向下分發事件onTouchEvent()。

2.接下來看看onClickListener()
onClickListener()在onTouchEvent()裏ACTION_UP中的performClick()方法中調用
每次觸屏點擊都會進行兩次動作ACTION_DOWN和ACTION_UP, 如果有滑動會多ACTION_MOVE動作
這裏寫圖片描述

這裏寫圖片描述

三、總結
總結流程圖:
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章