我有一个项目在其托管活动打开时会引起人们的关注。
但是在对讲模式下,它会被读取两次。
1)我如何定义一项活动选择后立即读取的项目?
2)是什么导致其内容描述被读取两次?
3)有没有一种方法可以定义单击后要阅读的内容描述?
我看到了这个doc,但没有找到答案。
答案 0 :(得分:0)
这个问题缺少一些细节,但是这里有一些答案。
1-屏幕阅读器将自动聚焦并阅读屏幕上的第一个视图(从右到左,从上到下)。这是默认行为,不应更改。
2-在某些情况下,显示内容时屏幕阅读器可能会执行不同的操作。例如,当显示Dialog
时,TalkBack
的默认行为是宣布标题并集中在第二个视图上。如果您手动要求读者将注意力集中在标题上,则该标题可能会被阅读两次。
3-您可以使用android:contentDescription定义要在XML中读取的文本,或者使用view.setContentDescription(textToRead)
定义要在代码中读取的文本
答案 1 :(得分:0)
如果外部容器是“可聚焦的”,则它可能会两次声明内容。 例如:
<FrameLayout focusable='true'>
<TextView/>
</FrameLayout>
所以,对我而言,解决方法是使外部容器“不可聚焦”