我使用 ImageView 来实现旁白可访问性,如下所示:
imageView.setContentDescription("This is ImageView control");
但是我面临的问题是,voiceOver 将完整的句子发音为“这是 imageview 控件,ImageView”
我想抑制画外音中的最后一个词“ImageView”,但无法得到任何解决方案。有人可以帮忙吗?
您不应在 Android 中覆盖此行为,它称为 Role 或类型,它可以帮助屏幕阅读器用户了解他们当前关注的节点类型以及他们如何与其交互。
来自Android的文档:
请勿在内容描述中包含 UI 元素的类型。屏幕阅读器会自动宣布元素的类型和描述。例如,如果选择一个按钮会导致您的应用程序中发生“提交”操作,请将按钮的描述设为“提交”,而不是“提交按钮”。
因此,良好的应用程序公民身份的一部分就是让这个角色成为公告的一部分。
此外,您现在不需要添加冗余的内容描述,例如“图像(视图)”,因为用户可以从屏幕阅读器设置中控制此类内容。
另外,我认为您指的是 TalkBack,而不是 VoiceOver。