问题标签 [android-accessibility]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 替换或删除 android 的辅助功能 EditText 节点中的现有值
我想在可访问性节点中重新粘贴一个文本。我使用下面的行将文本粘贴到辅助功能编辑文本节点中。
它的作用是将剪贴板值添加到辅助功能节点,而不是替换辅助功能节点中的现有值。我想用剪贴板值替换现有的辅助功能节点值,或者我需要清除辅助功能编辑文本节点值。
示例:假设提示节点已经有一些文本,例如 =“ password_hint ”,我将粘贴剪贴板值到提示节点。假设剪贴板值=“真”。
粘贴后:提示节点值=“password_hint true ”我需要的是,提示节点值:“ true ”
我需要使用什么操作替换或清除辅助功能编辑文本节点值。你能帮我吗?
android - 如何在 Android 的启动器应用上叠加信息?
我想为 Android 创建一个可访问性功能,只要有人按下或长按应用程序图标,就会出现提示。为此,我有几个问题:
- 如何识别用户何时点击主屏幕或应用启动器上的应用图标?
- 如何利用此事件来提取适当的信息并将其呈现给用户?
我是否需要开发一个自定义启动器应用程序才能识别用户按下等?或者我可以以某种方式从用户使用的任何启动器中检索这些信息并给出提示吗?
android - 辅助功能服务调用中的 OnPause() 或 onKeyDown()
onKeyDown()
单击主页或菜单按钮时,如何在 Accessibility Service 类中使用操作?单击主页或菜单按钮时,我需要执行一些操作。谁能帮我?
下面的代码将在正常活动中获取主页和菜单按钮的操作,但如何在 Accessibility Service 类中执行此操作。它不会在辅助功能服务类中触发:
android - 可访问性焦点仍停留在上一个片段上的按钮上
我有一个带有两个片段的基本测试应用程序。第一个片段有一个添加第二个片段的按钮。打开 TalkBack 后,我点击第一个片段上的按钮将其选中,然后它会出现绿色轮廓。然后,我双击它并打开第二个片段,但第一个片段上按钮的绿色轮廓仍然存在。而且,因为第一个片段上的按钮仍然有焦点,所以我无法滑动以将焦点移动到第二个片段上的任何内容。
android - 可访问性阅读将列表视图中的项目显示为列表项 + 标题视图
我正在我的自定义拉动以刷新列表视图中实现可访问性。我的下拉刷新列表视图有一个标题视图,用于在下拉时显示更新状态。如果我的列表仅包含 5 个项目,Talkback 会将其读取为“显示第 1 项,共 6 项”,而不是“显示第 1 项,共 5 项”。我认为总计数为列表项 + 标题视图(即 5 个项目 + 1 个标题视图)。
我想从中删除标题视图计数。
我已经尝试过headerView.setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS);
,但它对我不起作用。
android - 在android中单击返回,主页,菜单按钮时将触发哪个Accessibility事件
我试图打开应用程序并触发了一些可访问性事件,但是当我单击 Android 设备中的返回或主页或菜单按钮时,我无法获得任何可访问性事件。单击按钮时是否有可能获得某些事件。如果是普通应用程序,我可以使用暂停方法点击后退或菜单或主页按钮。我怎样才能获得无障碍服务类。请任何人都可以帮助我。
android - 无障碍服务消耗大量电池
我正在使用这些权限并从大约 10 个不同的应用程序中检索内容。有没有更好的方法来减少电池消耗?
阅读无障碍服务中的事件:
android - 我可以在 Android 中使用辅助功能获取和设置 textView 的 textcolor
我正在开发一个色盲应用程序,我想知道是否可以使用 Android 中的辅助功能更改 textView 的文本颜色。另外,我想使用辅助功能更改 textSize。
我可以做这些事情吗?,如果可以,怎么做?
android - 如何使可访问性焦点停留在当前片段内
我怎样才能focus navigation
留在current fragment?
Or,我怎样才能将focusable
整个片段或带有所有子视图的视图设置为 false?
完整解释:
我正在使我的 Android 应用程序可以访问。
我有这种情况:
单击标题“登录”后,主页片段(A)被登录片段(B)覆盖。正如你在这里看到的:
单击“登录”后,登录片段获得焦点,直到单击back
我希望accessibility focus
留在登录片段内(当用户通过焦点导航导航时),而不是继续在片段 A 中的覆盖元素之间跳转。
如何使焦点导航留在片段 B 内?或者,改为:
如何将focusable
片段 A 中的所有子视图设置为 false?
谢谢!
android - Android 无障碍服务 - 屏幕更新不一致
我将 AndroidAccessibilityService
部署到运行 Android 5.0.1 的三星 Note 4 上。
我使用 WhatsApp 作为测试平台,但这适用于任何应用程序,并且更多的是关于无障碍服务如何触发事件的问题。
Android 触发的事件2048 (TYPE_WINDOW_CONTENT_CHANGED)
不一致。如果我向我的 WhatsApp 发送消息,并且在 75% 的时间里,这个事件会被触发并且有时根本不会触发。
是否有一个原因?可访问性事件是否不可靠..?
此外,当用户滚动或 WhatsApps 的聊天窗口中出现新的通信时,似乎该事件4096 (TYPE_VIEW_SCROLLED)
确实会持续触发,但是,似乎无论如何都无法确定设备的当前滚动位置是什么?AccessibilityEvent.getSource()
提供对列表的某些元数据的访问(在本例中为 android:id/list),但是没有关于此列表或其子元素的滚动位置的信息。子列表与屏幕上显示的内容相关,boundsToScreen/Parent
无论您查看列表底部还是中间或顶部,其值都是相同的。是否有任何线索可以帮助我从我看到的AccessibilityEventNodeInfo
实例中确定滚动位置?
最后,当2048 (TYPE_WINDOW_CONTENT_CHANGED)
事件触发时,有时新元素实际上并不可用AccessibiltyEvent.getSource()
(即使您使用 while 循环迭代到根元素getParent()
,然后再次向下扫描)。在将更改应用于 UI 之前,该事件似乎正在拍摄屏幕快照。Athread.sleep
没有帮助 - 看起来AccessibilityEventNodeInfo
更像是快照而不是对 UI 的实时访问?有什么办法吗?