ImportantForAccessibility

ImportantForAccessibility

在读出整个屏幕时,有一个元素我希望“话语提示”跳过。

我可以将它的contentDescription设置为null

我还阅读了有关ImportantForAccessibility:的内容,该内容指示某个元素对于Accessibility API是否可见。

还有哪些其他API?

ImportantForAccessibility=false上使用contentDescription=null是否更干净?

最佳答案

ImportantForAccessibility=false用于隐藏辅助功能树中的任何元素,包括按钮,内容等。

contentDescription=null仅对要隐藏的图像(可能有其他我想不到的项目)有用,否则可访问性树将最好为该项目找到合适的名称。

一个主要的例子是ImageButton-如果您使用contentDescription=null,则它将声明“ button”和目标/按钮文本。如果使用ImportantForAccessibility=false,它将完全在可访问性树中隐藏该项目。

我能想到的最好的类比(如果您熟悉Web标准)是contentDescription就像alt属性或aria-labelledby属性,而ImportantForAccessibility=false类似于aria-hidden="true"

我要提醒您的一件事-除了装饰性物品,您实际上不应在辅助功能树中隐藏物品,请注意不要给屏幕阅读器用户以不同的体验(您未指定用例,只是想把这点打回家)。

最后一件事-使用TalkBack进行尝试,在设备上进行测试是了解您是否正确的最快方法!

10-08 18:00