android 事件传递机制 心得
2024-08-26 23:45:31
看了网上很多资料。
最后我发现可以用很简单的几句话就能把它说清楚
1 每个 viewgroup 内都有 三个方法
a dispatchTouchEvent 是自己决定要不要(管他爹)要这个苹果的 一般使用方法是 在此方法内
getParent().requestDisallowInterceptTouchEvent(false/true)
true表示要了, 苹果拿到手 false 表示 不要了,那这个苹果还在他爹那里
b onintercepTouchEvent 是这个苹果要不要往下发的,(到了这一步 说明上一步是 要了,苹果拿到手) c onTouchEvent 苹果自己吃了,(这一步被执行到的话比较特殊,分两种情况, 第二是 就没有往下发 onintercepTouchEvent 返回 true 直接自己吃掉了,
第一种是,往下发了,onintercepTouchEvent 返回 false(默认情况)
但是他儿子不要,又返回上来了,子view的ontouch 返回 false
他就有机会吃到了) 补充知识 view 只有 ontouch 方法 没有 dispatch 和 intercept 方法,
view 的ontouch 方法默认返回true
最新文章
- Linux LVM学习总结——创建卷组VG
- 总结Android中遇见的OOM
- jmeter制造安全证书
- JS预览图像将本地图片显示到浏览器上的代码
- 【Unity Shaders】使用CgInclude让你的Shader模块化——创建CgInclude文件存储光照模型
- Win7 下用 VS2015 编译最新 openssl(1.0.2j)包含32、64位debug和release版本的dll、lib(8个版本)
- poj3696:同余方程,欧拉定理
- GROUPING SETS、ROLLUP、CUBE
- Graph - leetcode [图]
- Scala并发编程
- 设计模式(7)--Bridge(桥接模式)--结构型
- php使用PHPexcel类读取excel文件(循环读取每个单元格的数据)
- JAVA作业之动手动脑
- Python测试 ——开发工具库
- .net core在Linux ARM板上运行
- Andrew Ng-ML-第十三章-支持向量机
- Mac下配置环境变量(转)
- Celery 框架学习笔记(生产者消费者模式)
- 64_p3
- 高德地图 API JavaScript API