android的事件分发机制,很难让人理解,即是有“吃鱼”的例子形象比喻依然,于是将它画成流程图,更加容易明白:


图中字体有点小,见谅,大致意思如下:

分发层次:activity---viewGroup(当然中间可有很多层viewGroup,原理相同)--view

分发方法:activity中只有分发、处理两个方法;viewGroup中有分发(disPathTouchEvent)、拦截(OnIntercptTouchEvent)、处理(OnTouchEvent)三个方法;view中有分发、处理两个方法;

返回值:每个方法的返回值有三种情况:true、false、super..

当返回不同的值时,按箭头的流程往下执行,大体逻辑是:返回ture,自己方法体内搞定;返回false不往下分发,返给上层;返回super,依次往下执行(只是大体逻辑,不严谨),


更多相关文章

  1. 浅谈Java中Collections.sort对List排序的两种方法
  2. Python list sort方法的具体使用
  3. python list.sort()根据多个关键字排序的方法实现
  4. 【转】Android(安卓)虚拟机安装APK文件方法
  5. 新书内容连载(2):Android(安卓)Activity的生命周期
  6. 第21天 Android(安卓)Touch事件学习 8 事件分发原理
  7. [Android]实现静默安装APK的两种方法
  8. Android(安卓)Touch事件原理加实例分析
  9. Android(安卓)XML解析(Simple API for XML(SAX) )

随机推荐

  1. golang判断tcp是否断开的方法
  2. golang中.a文件是什么
  3. golang不开发gui吗
  4. golang gmssl编译不过
  5. golang是什么语言
  6. golang map为啥不并发
  7. golang中sort包如何实现
  8. emacs支持golang吗
  9. golang用户登录怎么做
  10. dart和golang区别