Android滑动事件分派机制

一张图来简单明了的表述Android中事件的分派机制:

看了这个图,说起来就简单了。

假设一个视图结构如左上角所示,最外面的父控件是一个ViewGroup A,内一层是ViewGroup B,最最里面的控件是View C。

 

当用户去点击View C的时候,最先触发的是ViewGroup A的onInterceptTouchEvent()方法。这个方法是用来阻断事件的。

如果返回false(默认返回false),事件就会继续向内层传递。

  内层如果是ViewGroup的话,事件就先传递到ViewGroup的onInterceptTouchEvent()方法上,作用也是一样的,用来阻断事件。

  内层如果是View的话,就直接传递到View的onTouchEvent()上面了

如果返回true,就不向内层传递了,就把事件发给自己的onTouchEvent()方法。

 

当事件传递到onTouchEvent()方法的时候,这个方法主要用来处理事件。

如果返回true,就代表自己来处理这个事件,那么事件就不会继续向下传递了。事件被消费了。

如果返回false的话,就会向上一层父控件传递。

转载自: http://www.cnblogs.com/kross/p/3467285.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值