View的事件体系

本文详细介绍了Android中View的事件体系,包括测量、布局和绘制流程。讲解了MotionEvent的类型,如ACTION_DOWN、ACTION_MOVE等,并阐述了View事件分发机制,涉及dispatchTouchEvent、onInterceptTouchEvent和onTouchEvent的方法作用。此外,还探讨了解决View事件冲突的策略,如ScrollView与RecyclerView的滑动冲突处理。
摘要由CSDN通过智能技术生成

View的事件体系

View 的绘制流程:

1.View 的工作流程主要是指 measure、layout、draw 这三大流程,即测量、布局和绘制,其中 measure 确定 View 的测量宽/高,layout 确定 View 的最终宽/高和四个顶点的位置,而 draw 则将 View 绘制到屏幕上 

2.View 的绘制过程遵循如下几步:

绘制背景 background.draw(canvas)

 绘制自己(onDraw) 

 绘制 children(dispatchDraw) 

 绘制装饰(onDrawScollBars)

MotionEvent 是什么?包含几种事件?什么条件下会产生?

1.MotionEvent 是手指接触屏幕后所产生的一系列事件。典型的事件类型有如下:

 ACTION_DOWN:手指刚接触屏幕

 ACTION_MOVE:手指在屏幕上移动

 ACTION_UP:手指从屏幕上松开的一瞬间

 ACTION_CANCELL:手指保持按下操作,并从当前控件转移到外层控件时触发

2.正常情况下,一次手指触摸屏幕的行为会触发一系列点击事件,考虑如下几种情况:

 点击屏幕后松开,事件序列:DOWN→UP

 点击屏幕滑动一会再松开,事件序列为DOWN→MOVE→.....→MOVE→UP

View 事件传递分发机制:

1.View 事件分发本质就是对 MotionEvent 事件分发的过程。即当一个 Mo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值