我在xml中有两个TextView as按钮(是)和(否)。我正在测试一个使用蓝牙键盘和语音助手的盲人移动应用程序。我想要发生的是,当用户选择Yes按钮时,语音助手会说"Yes is selected“,或者如果用户选择No,它会说"No is selected”。
我使用的是Android Studio。这是一个旧的移动应用程序,需要为盲人更新。
<TextView
android:id="@+id/vhr_question_yes"
android:text="Yes"
android:clickable="true" />
<TextView
android:id="@+id/vhr_question_no"
android:text="No"
android:clickable="true" />发布于 2019-06-06 18:01:31
您可以简单地在XML文件或vhr_question_yes.contentDescription = "your text to be read."中添加android:contentDescription="your text to be read."
<TextView
android:id="@+id/vhr_question_yes"
android:text="Yes"
android:contentDescription="your text to be read."
android:clickable="true" />view.setContentDescription("your text here")将保存需要朗读的文本,以备对讲时使用。
你也可以添加pause by \n,像这样,“你的文本在这里\n按钮\n双击选择”
裁剪后,如果你需要再次关注它,那么你可以添加,
view.setOnClickListener{
//.... some action .....
// below code will set accessibility focus again on that view.
view.requestFocus()
view.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}发布于 2019-06-01 21:21:10
您可以将视图状态设置为selected。这样,屏幕阅读器将通知用户其状态的更改。
textView.setOnClickListener { view ->
view.isSelected = true
}在上面的这种情况下,屏幕阅读器将只通知视图已被选中。当用户导航回该视图时,阅读器将再次宣布选择了该视图。
如果您确实需要说出整个文本,您可以使用屏幕阅读器公告。
textView.setOnClickListener {view ->
view.isSelected = true
(view as? TextView)?.let {
it.announceForAccessibility("${it.text} is selected")
}
}用户可以通过平台依赖一致性。当选择一个视图时,阅读器可以作为selected, yes阅读。因此,公告应该谨慎使用。此外,如果用户稍后返回到此视图,则仅使用公告,所选状态将不会持久。
https://stackoverflow.com/questions/56389973
复制相似问题