0

我有一个AccessibilityDelegateCompat用于初始化的自定义视图AccessibilityNodeInfo,如何避免/删除视图默认的操作,例如“双击激活”?

我的 AccessibilityActionCompat 看起来像:

playVideoAction = new AccessibilityNodeInfoCompat
                .AccessibilityActionCompat(AccessibilityNodeInfoCompat.AccessibilityActionCompat.ACTION_ACCESSIBILITY_FOCUS
                .getId(),
                "Double tap to play video");

我打电话accessibilityNodeInfoCompat.addAction(playVideoAction)onInitializeAccessibilityNodeInfo()

我同时听到“双击播放视频”和“双击激活”。我只想听到播放视频动作。

4

1 回答 1

2

如果您想修改主要交互模式的语音内容(例如双击),您应该覆盖 CLICK 操作,而不是 FOCUS。

playVideoAction = new AccessibilityActionCompat(
    AccessibilityNodeInfoCompat.ACTION_CLICK, "play video");

此外,您的描述应该只包括将要执行的操作,而不是交互模型——所以只需“播放视频”即可。无障碍服务负责管理交互模型并添加“双击”描述。对于其他类型的无障碍服务,如切换访问或语音,此描述将有所不同。

于 2017-03-01T15:34:06.513 回答