android View事件传递

1:首先调用父类的LinearLayout/RelativeLayout 的dispatchTouchevent(MotionEvent event)进行事件的分发

(1):返回true:处理事件

(2):返回false,交给自己的onTouchEvent进行处理

(3):返回:return super.dispatchTouchEvent(ev);调用子View的dispathTouchevent(MotionEvent  event);

如果子view为ViewGroup,继续遵循上述处理方式进行处理,如果子view为具体view,

2: 调用子view(具体的view,如button,TextView,ImageView等)的dispatchTouchevent(MotionEvent event)进行处理,

(1)返回ture,处理事件,不往下传递

(2)返回false,交给onTouchEvent(MotionEvent event)处理

(3)返回super.dispatchTouchevent(MotionEvent event)与返回false一样,

注意:如果在Action.Down的时候,onTouchEvent(MotionEvent event)返回false,则后续的Action.MOVE,和Action.UP不会继续到底此View

<=======================================================================================>

附件有测试demo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值