触摸事件从Activity的dispatchEvent开始处理,其实还是由DecorView开始处理
setOnTouchListener中的onTouch在OnTouchEvent前面,这样设计方便可以没有入侵的取消对触摸事件的处理。
Android触摸事件全过程分析:由产生到Activity.dispatchTouchEvent()
==================================================
https://www.jianshu.com/p/db3...
触摸事件的分发(ViewGroup篇之一)
https://www.jianshu.com/p/065...
https://www.jianshu.com/p/724...
https://www.jianshu.com/p/065...
ViewGroup中dispatchTouchEvent
1.如果是down 清空touchTarget
2.如果是down且firstTouchTarget!=null 情况 判断是不是需要拦截
3.如果是down或者多点触控且没cancel也没intercept,根据z轴在上的顺序遍历,已有的target里找到就结束
4.分发事件,target为空就调用view的DispatchTouchEvent,否则就分发给所有的target
View中dispacthTouchEvent
先执行onTouchListener
再执行onTouchEvent
onTouchEvent中会进行click和longClick的判断
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。