如何避免 Android TalkBack 读取 SwitchCompat TextOn/TextOff

How to avoid Android TalkBack reading SwitchCompat TextOn/TextOff

我有一个 SwitchCompat,其中包含我通过 SwitchCompat.setText() 设置的文本。
在我的例子中,这个文本只是“开”或“关”。

问题是 Android TalkBack 将读取例如“打开,切换,双击以...”。
setShowText(false) 也无济于事。

解决方案是使用:

mToggle.setTextOff("");
mToggle.setTextOn("");

那么只会读取您通过 setText() 设置的文本。不知道这种奇怪的行为是错误还是按设计工作,但我觉得这不对。

我认为您应该改用 .setContentDescription()。

这是主要用于辅助功能支持的方法。您可以在此处阅读其文档:

https://developer.android.com/reference/android/view/View.html#setContentDescription(java.lang.CharSequence)

此外,按照无障碍指南,您不应删除提供的可操作文本,即 "ON double tap to.."

希望对您有所帮助!