关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
已采纳
mFirstTouchTarget是什么
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
danielinbiti 2015-06-07 15:25关注mFirstTouchTarget的意义是当前view的childview是否处理了消耗了touch事件,如果消耗掉了,mFirstTouchTarget就是null
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报
微信扫一扫点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2021-07-28 15:25wh义华的博客 // 从这里可以看到,如果down事件被拦截了,mFirstTouchTarget也没有被赋值的机会,故后续的move和up事件均不会走拦截。此时,拦截方法move和up事件的返回值也就没什么意义了。 final boolean intercepted; if ...
- 2016-06-07 15:39sunpeng0822的博客 对于一个事件序列,如果ViewGroup不拦截ACTION_DOWN,而子View处理了这个ACTION_DOWN事件,但是后面ViewGroup拦截了某个ACTION_MOVE,那么mFirstTouchTarget会被置为Null,也就是说后面不会询问ViewGroup是否会拦截...
- 2020-07-29 10:36旅行蜗牛的博客 思考:上面的代码里面如果拦截了不会去遍历子view触发子view的dispatch事件,而是会遍历mFirstTouchTarget,而mFirstTouchTarget是在没有拦截的时候遍历子view赋值的,所以如果Down事件拦截了,那么mFirs..
- 2025-07-02 11:13西门渔夫的博客 i--) { // 倒序遍历(上层View优先) if (child.dispatchTouchEvent(ev)) { mFirstTouchTarget = child; // 标记处理事件的子View return true; } } } // 3. 拦截或子View未处理,调用自身的onTouchEvent() return ...
- 2021-12-19 13:47Kslient的博客 } } } 通过源码发现,在down事件发生时,父控件没有拦截,而是找到了处理该事件的子view,于是将该子view赋值给mFirstTouchTarget。 接着,当move事件到来时,由于mFirstTouchTarget不为空,还是可以走到是否拦截的...
- 2018-12-17 11:42weixin_34293902的博客 在ViewGroup dispatchTouchEvent方法中首次出现mFirstTouchTarget的语句为: if (actionMasked == MotionEvent.ACTION_DOWN|| mFirstTouchTarget !=null) 如果是ACTION_DOWN事件,表示还没有找到消费Touch事件的...
- 2021-06-08 01:10weixin_39628063的博客 } if (dispatchTransformedTouchEvent(event, child)) { //找到mFirstTouchTarget newTouchTarget = addTouchTarget(child); alreadyDispatchedToNewTouchTarget = true; break; } } } } //事件下发及消费。如果没...
- 2018-12-26 12:23呆萌的大逗的博客 //监听手指按下、移动、抬起等事件,如果mFirstTouchTarget为null则可以认为没有子View响应事件了 if ( actionMasked == MotionEvent . ACTION_DOWN || mFirstTouchTarget != null ) { final ...
- 2020-05-22 01:15沙滩捡贝壳的小孩的博客 然后分析ViewGroup的事件分发过程,代码有点多,我们发现,但是问题不大,哎,搜那个onInterceptTouchEvent 然后来分析下源码,DOWN 事件就不用说了,那 mFirstTouchTarget 是什么呢? 从后面的逻辑代码可以看出来...
- 2020-09-11 17:18zhaoqinmuxue的博客 其中涉及到四个关键概念,前三个是方法,它们什么时候被调用,返回值起什么作用各不相同,最后一个是一个引用变量,它何时为null何时不为null决定了方法的调用。 dispatchTouchEvent onInterceptTouchEvent ...
- 2020-04-08 08:00郭霖_的博客 但对mFirstTouchTarget的作用是什么,大多数的文章都简单的描述为记录后续事件派分的目标,很少有具体分析这个机制的具体逻辑,更不说其他的一些问题,例如: 1.为什么要把mFirstTouchTarget设计成链表 2.记录目标...
- 2024-06-22 17:18字节卷动的博客 文章目录 一、基础概念 1.1 事件是什么 1.2 事件分发机制是什么 1.3 事件分发机制存在的意义 1.4 事件在哪些对象之间进行传递?传递顺序? 1.5 事件分发过程由哪些方法协作完成? 二、事件分发机制流程概述 流程1:...
- 2020-10-22 19:12weixin_39688856的博客 小菜:什么拦截方法,分发关拦截什么事?(糟糕背的答案忘了) 面试官:哦,没事,回去等通知吧。 阿宅 业余时间经常打游戏、追剧、熬夜,目前月薪 15k 面试官:事件分发的过程用到哪些方法 阿宅:有 ...
- 2017-04-16 23:52明立的博客 一、什么是View View是Android中所有控件的基类,不管是简单的Button,TextView还是复杂的RelativeLayout还是ListView,实际上都是由View这个基类(父类)派生出来的子类,也就是说,View本质上是界面层中关于控件...
- 2019-07-15 22:20村口管理员的博客 最近在做项目的时候要做一个类似桌面的...这个东西就是ViewGroup里面的mFirstTouchTarget成员。下面就开始说说我是如何在项目中遇到问题,发现mFirstTouchTart的重要性,如何解决问题的。这是Demo地址https://githu...
- 2024-04-30 16:582401_84544531的博客 ️:好吧,我们来复习一下:判断是否需要拦截 —> 主要是根据 ...在 DOWN 事件中将 touch 事件分发给子 View —> 这一过程如果有子 View 捕获消费了 touch 事件,会对 mFirstTouchTarget 进行赋值;
- 2022-08-03 14:19当子`View`成功处理事件(`addTouchTarget`返回非空`TouchTarget`),`mFirstTouchTarget`会被更新为该子`View`的`TouchTarget`。如果没有子`View`处理事件,事件则会回溯到父`ViewGroup`,重复上述过程,直到事件被...
- 2020-02-15 00:20分则能成的博客 文章目录前言源码探究TouchTarget说明重要成员变量触摸点ID存储对象获取和回收事件分发流程派发前准备派发目标查找执行派发mFirstTouchTarget说明总结 前言 ViewGroup中一个完整的事件派发流程是包含一个完整的事件...
- 2024-04-11 15:40_小马快跑_的博客 通过分析源码和运行示例Demo,终于明白了为什么Parent(ViewGroup)中的onTouch没有执行,根本原因就是Child把事件消费了,导致对应事件不再往Parent中传了。可以看到Parent和Child的onTouch都执行了,这是因为在...
- 没有解决我的问题, 去提问
