android 最全面的事件分发机制

Android事务分发机制一向都是一个麻烦点,很我开辟者对此都一头雾水,下面用图文来解决下我的理解,但愿这篇文章可以或许给你点纷歧样的看法。

东西/原料

  • android studio

方式/步调

  1. 1

    一、分发机制别离:Activity事务分发机制、ViewGroup事务分发机制、View事务分发机制,事务分发是dispatchTouchEvent,事务阻挡是onInterceptTouchEvent,事务的响应是onTouchEvent。

  2. 2

    二、编写ViewGroup的控件 担当LinearLayout 然后重写 dispatchTouchEvent,onInterceptTouchEvent,onTouchEvent。在每个方式中都打印一下执行代码。如下图。

  3. 3

    三、编写View的控件 担当Button 然后重写 dispatchTouchEvent,onTouchEvent。注重View是没有onInterceptTouchEvent阻挡事务的。如下图。

  4. 4

    四、起首看一下Activity的dispatchTouchEvent源码:上面这段代码,关头的就是:getWindow().superDispatchTouchEvent(ev)。如下图。

  5. 5

    五、点击按钮打印信息,我们看的挨次:activity-->viewGroup-->view,dispatchTouchEvent 和 onTouchEvent 一旦return true,终结事务传递,return false,事务都回传给父控件的onTouchEvent处置。

注重事项

  • 请点个赞
  • 发表于 2018-12-02 00:00
  • 阅读 ( 1031 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具