onTouch事件的传递机制
来源:互联网 发布:男包品牌 知乎 编辑:程序博客网 时间:2024/06/05 18:13
onTouch事件的传递机制
一、点击事件传递机制:
- 1.view执行dispatchTouchEvent 方法,开始分发事件,返回值决定是否分发出去
- 2.执行onInterceptHoverEvent 方法,判断是否中断事件,返回值决定是否传递给子View
- 3.执行onTouchEvent 方法,处理事件,返回值告知系统event事件是否被消费
二、流程图
1.Touch事件分发(dispatchTouchEvent)流程图:
2.Touch事件传递机制(onInterceptHoverEvent)流程图:
3.Touch事件处理(onTouchEvent)流程图:
三、和onTouch有关的方法
/** * 分发事件的方法,最早执行 * @param ev 事件 * @return 返回boolean值,true表示消息被分发出去 */@Overridepublic boolean dispatchTouchEvent(MotionEvent ev) { return super.dispatchTouchEvent(ev);}/** * 是否中断事件的传递 * 点击事件从view最外层传入内层 * * @param event 事件 * @return result 返回true时,中断事件,执行自己的onTouchEvent方法 * 返回false时,默认处理,不中断,也不会执行自己的onTouchEvent方法 */@Overridepublic boolean onInterceptTouchEvent(MotionEvent event) { return super.onInterceptTouchEvent(event);}/** * 点击事件解析处理 * * @param event * @return boolean值,true表示该事件被消费 */@Overridepublic boolean onTouchEvent(MotionEvent event) { return super.onTouchEvent(event);}
四、在View,ViewGroup,Activity中以上方法的存在情况是不同的
下图奉上View及其子类的继承关系:
1.在View类中有下面两种:
dispatchTouchEvent(MotionEvent ev); onTouchEvent(MotionEvent ev);
2.在ViewGroup(布局管理器是ViewGroup的子类,所以也继承了这三种方法)中有以上三种方法:
dispatchTouchEvent(MotionEvent ev); onInterceptTouchEvent(MotionEvent ev); onTouchEvent(MotionEvent ev);
3.在Activity中有两种:
dispatchTouchEvent(MotionEvent ev); onTouchEvent(MotionEvent ev);
五、从屏幕点击到事件的消费流程如下图:
常用的MotionEvent事件:
- ACTION_DOWN = 0
- ACTION_UP = 1
- ACTION_MOVE = 2
- ACTION_CANCEL = 3
阅读全文
1 0
- onTouch事件的传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- Android onTouch事件传递机制
- 一篇详细的 Android onTouch事件传递机制
- Android事件传递机制之【onTouch方法】
- android onclick ontouch 事件传递机制
- android onclick ontouch 事件传递机制
- Android笔记(9)渐变背景
- 牛顿法与拟牛顿法学习笔记(一)牛顿法
- gRpc的demo测试过程
- BZOJ 4094: [Usaco2013 Dec]Optimal Milking 线段树
- 怎样花两年时间去面试一个人
- onTouch事件的传递机制
- 代理模式
- Qt中插入图片
- windows搭建基于nginx的本地web前后端开发环境
- 【Android 数据业务解析】PreferredApn修改的源码分析
- caffe学习资料整理
- Latex写作的入门使用
- HTML 2017.7.16
- nodejs密码加密中生成随机数