现在,我们接着分析下Move、Up的事件分发流程:
一、Move事件分发:
1、Activity依旧会将move事件,交给最顶层的ViewGroup分发处理,还是分析dispatchTouchEvent()方法
部分代码进行省略:
public boolean dispatchTouchEvent(MotionEvent ev) {
...
boolean handled = false;
if (onFilterTouchEventForSecurity(ev)) {
final int action = ev.getAction();
final int actionMasked = action & MotionEvent.ACTION_MASK;
if (actionMasked == MotionEvent.ACTION_DOWN) {
cancelAndClearTouchTargets(ev);
resetTouchState();
}
final boolean intercepted;
if (actionMasked == MotionEvent.ACTION_DOWN || mFirstTouchTarget != null) {//-------A:后续move、up事件被拦截
...
} else {