Android 事件分发 (初步理解)

来源:互联网 发布:奥速usb监控软件 编辑:程序博客网 时间:2024/05/22 14:17

图片描述
大致描述
文字描述
activity有下一级

viewgroup的onInterceptTouchEvent返回false

最后的view层的dispatchTouchEvent返回false (员工没有下一级了)

直接调用onTouchEvent而且返回true时

自己处理
老板A :今天要做一个单子,老板A自己不干传给经理B
经理B : 今天要做一个单子,经理B自己不干传给组长C
组长C:今天要做一个单子, 组长C自己不干传给员工D
员工D:今天要做一个单子,自己做吧。做完结束。

其它略了

然后贴上结论(刚才说 的不够详细)

1.dispatchTouchEvent(事件分发)

当dispatchTouchEvent返回true时,由它自己处理
(就是不调用本层的OnTouchEvent例如他是activity那么就有他下面的OnTouchEvent来处理而不是他的OnTouchEvent来处理)

当dispatchTouchEvent返回false时,交给本层的OnTouchEvent处理

系统默认的情况下,分发给onInterceptTouchEvent

2.onInterceptTouchEvent(事件拦截)

当onInterceptTouchEvent返回true,由他自己的OnTouchEvent处理

当onInterceptTouchEvent返回false,继续分发

系统默认不拦截

3.onTouchEvent(事件响应)

当onTouchEvent返回true时自己处理

当onTouchEvent返回false,继续传递

系统默认继续传递

0 0
原创粉丝点击