gpt4 book ai didi

android - 谁调用 Activity.dispatchTouchEvent( event )?

转载 作者:太空宇宙 更新时间:2023-11-03 11:13:45 25 4
gpt4 key购买 nike

我正在尝试将文件中的触摸事件添加到当前应用程序(根据文件中找到的数据构建新的触摸事件),并且我正在尝试了解“真实”触摸事件时的调用链被触发。

从我进行的所有搜索中,我发现 Activity.dispatchTouchEvent(ev) 是我们有触摸事件时调用的第一个方法,然后它被转发给 ViewGroup.dispatchTouchEvent 然后到 View.dispatchTouchEvent

我想找到在 Activity.dispatchTouchEvent(ev) 之前调用的内容以及事件如何从 HW 传输到此方法。

最佳答案

也许您想要的是 android 输入框架的工作原理。以下有关 android 输入框架架构的博客可能会对您有所帮助。

Android Input Framework Architecture[Part 1] : Introduction to InputReader & InputDispatcher

输入过程可以简单的表示为:

输入硬件------> 内核/驱动(输入协议(protocol))-----> EventHub(framework/base/libs/ui) getevent------> InputReader ----> inputDispatcher ----> 窗口管理器。

  1. 首先,InputReader 将元输入事件转换为 android 事件(等 MotionEvent/KeyEvent)。
  2. 然后,InputDispatcher 将事件分发给 WindowManager
  3. WindowManager 调用 Window.Callback.dispatchTouchEvent(***)。

关于android - 谁调用 Activity.dispatchTouchEvent( event )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20617921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com