public Boolean dispatchTouchEvent(MotionEvent ev){
boolean consume = false;
if(onInterceTouchEvent(ev)){
consume=onTouchEvent(ev);
}else{
consume=child.dispatchTouchEvent(ev);
}
return consume;
}
對於一個根ViewGroup,點擊事件產生後,首先傳遞給它,它的dispatchTouchEvent就會被調用,如果它的onInterceTouchEvent方法返回true就表示它要攔截當前事件,事件就會交給它處理,即調用它的onTouchEvent方法;如果返回false,就表示它不攔截當前事件,事件繼續傳給它的子元素,接着子元素的dispatchTouchEvent方法就會被調用,如此反覆直到事件最終處理。