gpt4 book ai didi

android - 如何滚动可滚动的 AccessibilityNodeInfo 节点

转载 作者:行者123 更新时间:2023-12-02 10:45:30 24 4
gpt4 key购买 nike

使用Android 4.2.2

我正在尝试编写一个 AccessibilityService,并且具有大多数所需的功能。我正在覆盖层上绘图,并允许用户通过蓝牙开关选择/点击突出显示的项目(目的是希望仅使用一个开关与 Android 设备进行交互的禁用客户端)。

在解析屏幕时,我可以获得根 accessibiltyNodeInfo 对象及其所有子对象。我可以在屏幕上突出显示所有此类元素,然后通过 .performAction() 方法单击所需的元素。

在主屏幕上,有 3 个可用的“ Pane ”,其中显示中间的一个。向左或向右滑动即可查看其他内容(标准启动器行为)。有一个节点报告 isScrollable = true,但 Action Flags 不报告 ACTION_SCROLL_FORWARD 或 ACTION_SCROLL_BACKWARDS。如果我无法在其上调用 .performAction() 因为它不支持滚动,我该如何滚动这样的节点?如果它不能以某种方式滚动,为什么它会报告 isScrollable = true?

感谢任何帮助 - 谢谢。

最佳答案

您无法滚动无法执行 ACTION_SCROLL_FORWARD 或 ACTION_SCROLL_BACKWARDS 的节点。

Android 上的辅助功能框架充其量只是实验性的,并且存在诸如您提到的不一致问题。一般来说,最好不要依赖任何 is[Property]() 方法。相反,您应该在调用节点上的 getActions()getActionsList() 后测试您自己感兴趣的属性。

关于android - 如何滚动可滚动的 AccessibilityNodeInfo 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19483996/

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