ontouchEvent,ontouchListener,onclickListener的執行順序

感謝郭神:http://blog.csdn.net/guolin_blog/article/details/9097463


先總結一下


1.view在執行dispatchTouchEvent的時候先要去判斷該view是否有touchListener和執行TouchListener的onTouch方法的返回值。

2.TouchListener的onTouch方法返回false,事件繼續傳遞在dispatch方法中調用了同級的onTouchEvent方法

3.然後在onTouchEvent方法中的UP事件中判斷是否註冊有onClickListener,有就執行onclick方法。



文章提出的疑問。onTouchListener中返回了false爲什麼還能接收到ACTION_DOWN以外的事件。因爲返回false之後會執行view的onTouchEvent方法。在onTouchEvent方法,只要當前view是可點擊或者長按的都會返回true。


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