当前位置: 首页 > news >正文

Android View的事件分发机制

ViewGroup的事件分发逻辑

从Activity传递给Window,再传递给ViewGroup,ViewGroup的dispatchTouchEvent()会被调用,如果onInterceptTouchEvent()返回true
转交自身onTouchEvent()处理,如果返回false继续向子View传递,子View的dispatchTouchEvent()会被调用,若子View是ViewGroup,重复上述流程。若子View是普通View,调用其onTouchEvent()

View的事件处理

1、OnTouchListener优先:若设置且onTouch()返回true,则onTouchEvent()不被调用。
2、默认行为:View的onTouchEvent()处理点击(如OnClickListener)和长按(OnLongClickListener),返回true表示消费事件。

滑动冲突处理

requestDisallowInterceptTouchEvent():子View可调用此方法,禁止父ViewGroup拦截事件(如处理横向滑动时阻止父ViewPager切换页面)。

http://www.xdnf.cn/news/587503.html

相关文章:

  • docker容器暴露端口的作用
  • kafka在线增加分区副本数
  • RK3588 RGA 测试
  • 工商业预付费系统组成架构及系统特点介绍
  • 【MySQL成神之路】MySQL插入、删除、更新操作汇总
  • Unity Shader入门(更新中)
  • python安装与使用
  • Java的列表、集合、数组的添加一个元素各自用的什么方法?
  • 【论文阅读】——AN EXPRESSIVE REPRESENTATION OF GENERAL 3D SHAPES
  • Linux环境基础开发工具->vim
  • 实现FAT12文件管理
  • 线性回归模型的参数估计
  • AutoMapper .net Framework 的 Model转换扩展方法
  • python学习 day5
  • 部署人工智能Qlib量化投资平台
  • 你通俗易懂的理解——线程、多线程与线程池
  • 架构实践中,指标体系如何科学建立?构建指标体系的五层结构模型是什么?不同架构风格下的指标体系有怎样的差异?
  • 腾讯2025年校招笔试真题手撕(二)
  • 欧拉降幂(JAVA)蓝桥杯乘积幂次
  • Windows 平台 TCP 通信开发指南
  • Redisson分布式锁案列和源码解读
  • WebBuilder快速开发平台:企业级开发的未来
  • 语义分割的image
  • linux arm架构下如何搭建内网穿透
  • linux 下 scp 传文件时保留文件夹中的原格式属性
  • vue3+element-plus+pinia完整搭建好看简洁的管理后台
  • 关于Python编程语言的详细介绍,结合其核心特性、应用领域和发展现状,以结构化方式呈现:
  • 邮箱验证码登录流程
  • [每日一题] 3362. 零数组变换 iii
  • MapReduce-Top N程序编写与运行