Android事件分发机制简述

android的事件分发机制有两个主角:View、ViewGroup
ViewGroup包含View,作为孩子的View又可以作为ViewGroup包含下一级View……
ViewGroup有三个事件:onInteceptTouchEvent、dispatchTouchEvent、onTouchEvent

说一下我的理解:
onInteceptTouchEvent负责事件拦截
dispatchTouchEvent负责事件分发
onTouchEvent负责事件处理
View只有dispatchTouchEvent、onTouchEvent作用同上。

下面说一下这之间的作用关系:

1.onInteceptTouchEvent,返回boolean,false表示不拦截事件 事件传递到下一级view

2.dispatchTouchEvent ,返回boolean。 true: 表示不往下分发,又自己处理,然后执行onTouchEvent来处理事件(PS:dispatchTouchEvent本身不处理事件); false: 分发事件 事件传递到下一级view

3.onTouchEvent, 处理事件

以上是我的理解,感觉这么解释更好理解,说的不对的地方欢迎留言指正。想要深入研究的同学出门左转大神的博客:http://www.cnblogs.com/linjzong/p/4191891.html

posted @ 2015-12-28 18:25  Z漫步  阅读(329)  评论(0编辑  收藏  举报