Android View的onTouchEvent和OnTouch区别
来源:互联网 发布:春英广场舞网络一线牵 编辑:程序博客网 时间:2024/06/06 09:52
今天在绘制自定义View的时候,找资料,觉得这篇写的还可以,转载下:
还是以自定义的TestButton为例。
我们可以通过重写onTouchEvent方法来处理诸如down move up的消息:
也可以通过实现OnTouchListener的接口,然后设置TestButton的onTouchListener可以达到同样的目的但上述两种监听有什么区别呢?
先看一下Android源码中对于View中dispatchTouchEvent的实现:
可以看到onTouchListener的接口的优先级是要高于onTouchEvent的,假若onTouchListener中的onTouch方法返回true,
表示此次事件已经被消费了,那onTouchEvent是接收不到消息的。
因为Button的performClick是利用onTouchEvent实现,假若onTouchEvent没有被调用到,那么Button的Click事件也无法响应。
综合来讲:
onTouchListener的onTouch方法优先级比onTouchEvent高,会先触发。
假如onTouch方法返回false会接着触发onTouchEvent,反之onTouchEvent方法不会被调用。
内置诸如click事件的实现等等都基于onTouchEvent,假如onTouch返回true,这些事件将不会被触发。
阅读全文
0 0
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android View的onTouchEvent和OnTouch区别
- Android中View的onTouchEvent和onTouch的区别
- Android系统中View的onTouchEvent和OnTouch区别
- Android:onTouch()和onTouchEvent()的区别?
- android:onTouch()和onTouchEvent()的区别
- Gym
- 市场营销笔记
- CSS盒模型中的块级元素、行内元素、行内块级元素和隐藏元素
- Linux
- jvm系列 (三) ---锁的优化
- Android View的onTouchEvent和OnTouch区别
- 消除重复数字
- git使用教程
- 引用(交换数值)
- css其他属性
- 安卓图片加载代码
- Action参数封装过程中,数据类型转换问题
- IPC-共享内存
- PHP 单例模式解析和实战