背景
在安卓事件分发学习之dispatchTouchEvent方法一文中,我记录了事件方法的头一个方法---dispatchTouchEvent()方法的源码阅读过程,现在记录第二个方法---onInterceptTouchEvent()方法的阅读
ViewGroup#onInterceptTouchEvent
这个方法只在ViewGroup中有。
源码如下
public boolean onInterceptTouchEvent(MotionEvent ev) { if (ev.isFromSource(InputDevice.SOURCE_MOUSE) // 一般都不是从鼠标过来的,所以默认这个判断不成立,返回false && ev.getAction() == MotionEvent.ACTION_DOWN && ev.isButtonPressed(MotionEvent.BUTTON_PRIMARY) && isOnScrollbarThumb(ev.getX(), ev.getY())) { return true; } return false; }
看来默认返回false,因为一般都不是鼠标过来的事件,返回true的if判断直接不成立
结语
事件分发的最后一个方法,参见文章安卓事件分发学习之onTouchEvent方法