首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用蓝牙键盘和语音助手的TextView按钮

使用蓝牙键盘和语音助手的TextView按钮
EN

Stack Overflow用户
提问于 2019-05-31 14:44:06
回答 2查看 314关注 0票数 1

我在xml中有两个TextView as按钮(是)和(否)。我正在测试一个使用蓝牙键盘和语音助手的盲人移动应用程序。我想要发生的是,当用户选择Yes按钮时,语音助手会说"Yes is selected“,或者如果用户选择No,它会说"No is selected”。

我使用的是Android Studio。这是一个旧的移动应用程序,需要为盲人更新。

代码语言:javascript
复制
<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" />
EN

回答 2

Stack Overflow用户

发布于 2019-06-06 18:01:31

您可以简单地在XML文件或vhr_question_yes.contentDescription = "your text to be read."中添加android:contentDescription="your text to be read."

代码语言:javascript
复制
 <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双击选择”

裁剪后,如果你需要再次关注它,那么你可以添加,

代码语言:javascript
复制
view.setOnClickListener{

    //.... some action .....

    // below code will set accessibility focus again on that view.
    view.requestFocus()
    view.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
票数 1
EN

Stack Overflow用户

发布于 2019-06-01 21:21:10

您可以将视图状态设置为selected。这样,屏幕阅读器将通知用户其状态的更改。

代码语言:javascript
复制
textView.setOnClickListener { view ->
    view.isSelected = true
}

在上面的这种情况下,屏幕阅读器将只通知视图已被选中。当用户导航回该视图时,阅读器将再次宣布选择了该视图。

如果您确实需要说出整个文本,您可以使用屏幕阅读器公告。

代码语言:javascript
复制
textView.setOnClickListener {view ->
    view.isSelected = true

    (view as? TextView)?.let {
        it.announceForAccessibility("${it.text} is selected")
    }
}

用户可以通过平台依赖一致性。当选择一个视图时,阅读器可以作为selected, yes阅读。因此,公告应该谨慎使用。此外,如果用户稍后返回到此视图,则仅使用公告,所选状态将不会持久。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56389973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档