0

我在 Android 4.4.2 (KitKat) 设备上运行我的应用程序。我的应用程序有一个 ListView。当我将最后一项添加到列表视图时,它会显示一些内容,大约 5 秒后,它会发生变化(将不同的视图加载到该特定列表项)。

TalkBack 开启时 -

如果在那 5 秒的窗口中,我单击最后一项 - TalkBack 会标记它、读取它,并且不会让视图发生变化。

我在以前的 Android 版本上没有这个问题。

有谁知道为什么会这样?如果我可以覆盖这种行为?

谢谢!

4

1 回答 1

0

我没有找到直接的解决方案。我通过覆盖可访问性默认行为解决了这个问题。我删除了视图周围的标记,只保留了阅读部分。

这是我使用的代码:

view.setAccessibilityDelegate(new AccessibilityDelegate() {
            @Override
            public boolean performAccessibilityAction(View host, int action, Bundle args) {
                //call super to perform the action
                boolean ret = super.performAccessibilityAction(host, action, args);
                //call super with remove-focus action to remove the mark around the view
                super.performAccessibilityAction(host, AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS, args);
                return ret;
            }
         });
于 2014-06-12T13:56:17.447 回答