触摸事件是一个自顶向下的过程,最早发送在Activity,接着Activity向下传递到第一个ViewGroup,ViewGroup将事件接着往下传递,一直传到需要处理这个事件的类如果一直没有处理,事件就会住上传递,一直到Activity。
触摸事件涉及到的方法:
dispatchTouchEvent:
return true //当前的类消费完触摸事件,不向下级传递
return false //当前的类不消费触摸事件,返回上级类处理
super.dispatchTouchEvent() //交由onInterceptTouchEvent或onTouchEvent处理
onInterceptTouchEvent:
return true //当前的类拦截这个触摸事件,交由当前的onTouchEvent处理
return false //不拦截当前的触摸事件,交由子类的dispatchTouchEvnet处理
super 与 return false同义
onTouchEvent:
return true //当前类消费这个事件,不向上级传递
return fasle //当前事件返回上级onTouch,不接受以后的事件
super 与 return false同义