首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编辑文本框中的Android辅助功能文本阅读不正确/恢复对话后的预期

编辑文本框中的Android辅助功能文本阅读不正确/恢复对话后的预期
EN

Stack Overflow用户
提问于 2018-09-07 11:54:09
回答 2查看 1.8K关注 0票数 0

我正在为盲人创建应用程序。在那里,当盲人输入邮政编码后,在那个档案注册编辑文本框中,就像45987。它的读数是40 5,987。

但是,我想读一个四五九八七。4 5 9 8 7.

注意:当我在TexView中尝试同样的方法时,它的读数也是正确的。唯一的问题是EditText。

我的示例代码: zipCode_EditText.setContentDescription("4 5 9 8 7");

我已经引用了这些链接:

Android Acccessibility: How do I change the text read out loud for an EditText View

How to make TalkBack read TextView error message automatically?

感谢预支

EN

回答 2

Stack Overflow用户

发布于 2018-09-08 02:28:42

通常,您不希望强制屏幕阅读器以特定的方式读取某些内容。不幸的是,屏幕阅读器用户习惯了阅读事物的方式。如果您的输入字段有一个正确关联的标签,比如"zipcode",那么当他们听到"zipcode 40 5,987“时,他们就会明白它是什么。屏幕阅读器用户可以按字符导航元素,以便他们可以根据需要单独读取每个数字。

重要的是,您有一个与输入字段相关联的标签。我知道你是专门为Android编写的(我不熟悉),但如果我将你正在做的事情与html进行比较,在html中,你可能会想要这样:

代码语言:javascript
复制
<label for="zip">zipcode:</label>
<input id="zip">

有一些方法(在html中)可以强制屏幕阅读器所说的内容,但对于盲文用户来说,这通常会使事情变得混乱。您为强制屏幕阅读器语音而添加的任何“隐藏”文本都会实际显示在盲文设备上。

对于html,autocomplete属性可用作屏幕阅读器对字段中信息类型的“提示”。屏幕阅读软件可以使用该提示来更改它读取字段内容的方式(例如autocomplete="postal-code"),但是对该提示的支持还不是很广泛。同样,我知道这是为html编写的,而您是专门为android编写的,但也许android也有类似的“提示”概念。

票数 0
EN

Stack Overflow用户

发布于 2018-09-08 09:47:01

最好不要强迫Talk Back这样做。我的建议实际上是完全停止这样做。作为盲人,解析单个数字实际上比解析单个数字更容易。45,500比4,5,5,0,0更容易记住。将“45,987”从心理上覆盖到邮政编码就成了第二天性。如果有一个足够长的数字需要一次检查一个数字,TalkBack就有模式支持这一点。您可以将TalkBack切换到字符模式,然后手动探索它。

这个要求确实来自于有视力的人,像有视力的人一样思考,并解决盲人没有的问题。

既然另一个用户提出了这个问题,那么在Android中编写编辑文本的最好方法就是

代码语言:javascript
复制
TextView label = ....
EditText editBox = .....

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

https://stackoverflow.com/questions/52215042

复制
相关文章

相似问题

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