Android事务分发机制一向都是一个麻烦点 , 很我开辟者对此都一头雾水 , 下面用图文来解决下我的理解 , 但愿这篇文章可以或许给你点纷歧样的看法 。
文章插图
需要这些哦
android studio
方式/
1一、分发机制别离:Activity事务分发机制、ViewGroup事务分发机制、View事务分发机制 , 事务分发是dispatchTouchEvent , 事务阻挡是onInterceptTouchEvent , 事务的响应是onTouchEvent 。
文章插图
2二、编写ViewGroup的控件 担当LinearLayout 然后重写 dispatchTouchEvent , onInterceptTouchEvent , onTouchEvent 。 在每个方式中都打印一下执行代码 。 如下图 。
文章插图
3三、编写View的控件 担当Button 然后重写 dispatchTouchEvent , onTouchEvent 。 注重View是没有onInterceptTouchEvent阻挡事务的 。 如下图 。
文章插图
4四、起首看一下Activity的dispatchTouchEvent源码:上面这段代码 , 关头的就是:getWindow().superDispatchTouchEvent(ev) 。 如下图 。
文章插图
5【android 最全面的事件分发机制】五、点击按钮打印信息 , 我们看的挨次:activity-->viewGroup-->view,dispatchTouchEvent 和 onTouchEvent 一旦return true,终结事务传递,return false,事务都回传给父控件的onTouchEvent处置 。
文章插图
注重事项请点个赞
以上内容就是android 最全面的事件分发机制的内容啦 , 希望对你有所帮助哦!
推荐阅读
- 银行卡里面的钱被盗怎么办?
- 苹果电脑要用上面的F1F2那些键盘的时候怎么弄
- 4G内存使用android studio做到不卡顿
- Word中输入文字覆盖后面的文字怎么办
- 最全 eclipse怎样调整字体大小
- 白茶最全的冲泡方法 你值得拥有!
- android studio、eclipse共用SDK 设置sdk路径
- android studio下载插件失败怎么办
- android studio汉化超详细步骤
- Android中如何画等分饼图