假设我有一个项目列表,每个项目中的一个视图是一条消息,在一个简单的 TextView 中,它在代码中填充(来自后端服务的动态数据)。
<TextView
android:id="@+id/message"
style="@style/DefaultText"
/>
视觉上它不需要标签;列表项布局非常清晰。但是听听 TalkBack 是如何读取屏幕的,我认为为它加上一个“标签”或描述会很有好处。这样 TalkBack 会显示如下内容:
消息:[实际动态消息内容]
我的问题是:是否可以为 TextView 添加标签/描述,首先,它不会替换TextView 内容,而是与它一起阅读,其次,只会影响 TalkBack(而不是视觉呈现)?
我尝试了什么:
contentDescription
对于文本视图。不起作用:如果设置,则不公布实际内容,仅公布contentDescription
. 嗯,也许如果我在代码中设置这个,并在实际内容前面加上描述......但是没有更简单的方法吗?- 将 TextView 与
labelFor
指向分开@+id/message
。问题是它也显示在视觉上并且搞砸了设计。如果我以某种方式使其不可见,则 TalkBack 似乎也不会读取它。