编辑文本框文本中的Android辅助功能无法正常阅读/ Expect After Talk重新开启

问题描述 投票:0回答:2

我正在为盲人创建应用程序。在那里,当盲人进入邮政编码后,在该档案上注册编辑文本框,如45987.它读作四五十九和七十八。

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

注意:当我在TextView中尝试相同时,其读取正确。只有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?

谢谢提前

android android-edittext accessibility talkback android-textinputedittext
2个回答
0
投票

通常,您不希望强制屏幕阅读器以特定方式阅读内容。不幸的是,屏幕阅读器用户已经习惯了阅读的方式。如果您的输入字段与其具有正确关联的标签,例如“zipcode”,那么当他们听到“zipcode四十五和九百八十七”时,他们就会明白它是什么。屏幕阅读器用户可以按字符导航元素,以便他们可以根据需要单独读取每个数字。

重要的是你有一个与输入字段相关的标签。我知道你是专门为Android编写的(我不熟悉),但是如果我将你正在做的事情与html进行比较,那么在html中你需要的东西如下:

<label for="zip">zipcode:</label>
<input id="zip">

有很多方法(用HTML格式)强制屏幕阅读器说什么,但它通常会让盲文用户感到困惑。您添加的任何“隐藏”文本强制屏幕阅读器语音都会在盲文设备上进行物理显示。

对于html,autocomplete属性可以用作“提示”来筛选读者对字段中信息类型的信息。屏幕阅读软件可以使用该提示来改变它读取字段内容的方式(例如autocomplete="postal-code"),但是对此提示的支持尚未得到广泛支持。再一次,我知道这是针对html而你是专门为android编写的,但也许对于android有一个类似的“提示”概念。


0
投票

最好不要强迫Talk Back这样做。我的建议实际上就是完全停止这样做。作为一个盲人,解析单个数字实际上比单个数字更容易。 45,500比4,5,5,0,0更容易记住。在邮政编码中精神覆盖“四万五千九百七十七”成为第二天性。如果有一个足够长的数字,它需要一次检查一个数字,TalkBack有支持这种情况的模式。您可以将TalkBack切换到字符模式并手动探索它。

这个要求实际上只来自有视力的人,他们像一个有视力的人一样思考并解决盲人没有的问题。

而且由于另一位用户提出了这个问题,因此在Android中编写编辑文本的最佳方法是

TextView label = ....
EditText editBox = .....

label.setLabeFor(editBox);
© www.soinside.com 2019 - 2024. All rights reserved.