首先看看讲事件分发的博客: http://blog.csdn.net/xiaanming/article/details/21696315 和 http://www.csdn123.com/html/topnews201408/57/3457.htm

https://blog.csdn.net/jo__yang/article/details/52789523

https://blog.csdn.net/a553181867/article/details/51296308

点击事件是在ViewRootImpl.java中生成的。

事件分发是自上而下的, 父节点消费了事件后, 子节点就无法再得到该事件(即拦截);如果子view消费了事件, 那么父view就不再传递该事件。、

最简单的例子,  一个viewgroup里包含一个view, 点击这个view。

07-04 18:08:08.507 10851-10851/android.gr.com.myapplication D/MyRelativeLayout: viewgroup dispatchTouchEvent
07-04 18:08:08.507 10851-10851/android.gr.com.myapplication D/MyRelativeLayout: viewgroup onInterceptTouchEvent
07-04 18:08:08.507 10851-10851/android.gr.com.myapplication D/MyView: view dispatchTouchEvent
07-04 18:08:08.508 10851-10851/android.gr.com.myapplication D/MyView: view onTouchEvent
07-04 18:08:08.508 10851-10851/android.gr.com.myapplication D/MyRelativeLayout: viewgroup onTouchEvent

我们要注意下ViewGroup的dispatchTouchEvent函数中这块代码, 如果拦截了ACTION_DOWN事件,   后续就不会有MOVE、UP事件了。

对Android view/viewgroup事件分发的理解相关推荐

  1. Android View的事件分发机制解析

    作者:网易·周龙 最近刚看完android-Ultra-Pull-To-Refresh下拉刷新的源码,发现在写自定义控件时,对于View的事件的传递总是搞不太清楚,而View事件的分发机制,又是解决可 ...

  2. Android View的事件分发机制和滑动冲突解决方案

    这篇文章会先讲Android中View的事件分发机制,然后再介绍Android滑动冲突的形成原因并给出解决方案.因水平有限,讲的不会太过深入,只希望各位看了之后对事件分发机制的流程有个大概的概念,并且 ...

  3. Android ViewGroup事件分发机制

    理~ 1.案例 首先我们接着上一篇的代码,在代码中添加一个自定义的LinearLayout: [java] view plaincopy package com.example.zhy_event03 ...

  4. android viewgroup点击变色,Android ViewGroup事件分发

    上篇文章已经分析了Android的Touch事件分发.如果没看的建议先看一下.Android View的Touch事件分发. 接下来我们开始写几种场景,得出一个初步的执行顺序,然后我们按照这个顺序开始 ...

  5. Android中的事件分发和处理

    上次跟大家分享了一下自定义View的一下要点,这次跟大家聊一下View的事件分发及处理,为什么主题都是View,因为作为一名初级应用层Android工程师,跟我打交道最多的莫过于各种各样的View,只 ...

  6. android touch事件无反应,android的touch事件分发响应机制

    想要弄明白android的touch事件分发响应机制需要先充分理解一下几个知识点: View和ViewGroup touch事件的构成 ViewGroup如何对事件分发和拦截 View和ViewGro ...

  7. 安卓自定义View进阶-事件分发机制原理【转自 app架构师 微信公众号】

    注意:本文中所有源码分析部分均基于 API23(Android 6.0) 版本,由于安卓系统源码改变很多,可能与之前版本有所不同,但基本流程都是一致的. 为什么要有事件分发机制? 安卓上面的View是 ...

  8. 总结系列——聊聊android里面的事件分发

    前言 android 中的事件分发,已经是老生常谈的问题了,一般都是从Activity开始聊,但是真的是这样吗?hongyang大神之前一篇纠错,解决了我一个很大的困惑,也算是扫盲吧,这篇文章,是从头 ...

  9. 安卓自定义View进阶-事件分发机制详解

    原文地址:http://www.gcssloop.com/customview/dispatch-touchevent-source Android 事件分发机制详解,在上一篇文章 事件分发机制原理  ...

最新文章

  1. shell任务不受意外中断影响的常见方法
  2. CPU深夜狂飙,一帮大佬都傻眼了...
  3. LINQ教程二:LINQ操作语法
  4. centos7使用sendmail发送邮件
  5. WebRTC各种资料集合(WebRtc入门必看)
  6. 为什么每个理发店门口都有彩色的柱子?你不知道吧
  7. python 生成pdf页面大小_(Python)更改使用xtopd生成的PDF文件的页面大小和格式
  8. 客户端配置_PPPoE服务器端客户端的配置案例脚本
  9. 如何在Node.js上的Express.js中获取GET(查询字符串)变量?
  10. 微信小程序支付-付款(Java后台)
  11. [转]详细解说:简单CSS3实现炫酷读者墙
  12. mybatis进阶(动态sql、关系映射、延迟加载、缓存)
  13. java计算机毕业设计论文评审系统源码+系统+mysql数据库+lw文档
  14. vvic/搜款网API接口(item_search-根据关键词取商品列表 )
  15. iOS开发-class_ro_t和class_rw_t的区别
  16. 上海 -》 张家界 旅行 计划10.1
  17. TP-Admin 一个拥有站群功能的多功能CMS基础系统
  18. 51信用卡的面试问题
  19. canvas动画科技园_【国庆营地】把梳子卖给和尚?沃顿投资大赛预备营带你洞见价值...
  20. springboot-vue跨域详解

热门文章

  1. 【Python随笔】python进程池ProcessPoolExecutor的用法与实现分析
  2. Android 8.0 、9.0源码编译问题记录
  3. 【树莓派开发】使用树莓派在Linux环境下编写C语言代码
  4. 数据分析利器 —— 列式储存数据库
  5. zipkin链路追踪详解
  6. modem与baseband
  7. java集合类深度解析
  8. 关于html页面访问Controller报404 not fount
  9. C语言的快乐-表白代码
  10. css如何添加模糊效果,css动态模糊效果