Android View绘制及事件(五)View点击事件响应及分发过程详解

本文详细探讨了Android中的MotionEvent事件,包括事件传递顺序、方法、三者关系,以及如何处理滑动冲突。讲解了Activity、ViewGroup和View之间的事件分发流程,重点解析了onTouchListener、onTouchEvent和onClickListener的交互机制。同时,介绍了外部拦截法和内部拦截法解决滑动冲突的策略。

系列推荐:

 Android View绘制及事件(一)屏幕的视图层级,窗口概念初识

Android View绘制及事件(二)setContentView()源码,LayoutInflater加载View的过程

Android View绘制及事件(三)自定义View及View绘制流程

Android View绘制及事件(四)自定义组合控件+约束布局ConstraintLayout+自定义控件属性


目录

MotionEvent 事件

事件传递顺序

事件传递方法

三者关系详解

onTouchListener、onTouchEvent、onClickListener

滑动冲突


MotionEvent 事件

它是一个包装了很多触摸事件的实体类,用于存储UI界面与用户交互时的事件信息,如事件类型(按下、抬起、滑动)、x\y坐标值、发生的时间等。

getRawX() / getRawY()   :触摸点在屏幕上的绝对坐标,坐标值相对于屏幕而言;

getY() / getX() :基于该View的坐标值;

getAction() / getActionMasked() :事件类型

getAction,4种常用类型:ACTION_DOWN、ACTION_MOVE、ACTION_UP、ACTION_CANCEL。

getActionMasked,多2种:ACTION_POINTER_DOWN、ACTION_POINTER_UP。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

艾阳Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值