首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置react本机TextInput作为手机号码输入供屏幕阅读器读取

如何设置react本机TextInput作为手机号码输入供屏幕阅读器读取
EN

Stack Overflow用户
提问于 2018-07-27 18:13:26
回答 1查看 2.3K关注 0票数 8

我正在尝试将可访问性添加到我的TextInput中,将其作为手机号码(而不是数字)进行本机阅读,如下所示。

代码语言:javascript
复制
<TextInput
    style={{height: 40, borderColor: 'gray', borderWidth: 1}}
    editable={false}
    accessibilityLabel={'26726855243'}
    value={'26726855243'}
  />

这个数字正被android TalkBack和iOS VoiceOver解读为数字。我试过在数字之间添加空格,但仍然不起作用,accessibilityLabel={'26726855243'.split('').join(' ')}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-31 15:25:52

CSS3语音模块提供对此行为的支持:https://www.w3.org/TR/css3-speech/

对于特定的示例,您可以创建一个"phone“类,如下所示:

代码语言:javascript
复制
<style>
  .phone {speak: digits;}
</style>

请注意,此行为目前仅由VoiceOver支持,而不受TalkBack支持。

对于Talkback和大多数其他屏幕阅读器,插入逗号而不是空格(屏幕阅读器通常会暂停使用逗号、句号、分号、感叹号和问号,而不是空格):

代码语言:javascript
复制
accessibilityLabel={'26726855243'.split('').join(',')}

不过!我鼓励您考虑不要试图以这种方式管理屏幕阅读器的行为。请记住,现代屏幕阅读器有各种各样的用户设置来处理数字和缩略语发音。通过尝试在开发人员端将他们的发音管理到这个级别,您可能会给用户带来意想不到的行为。

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

https://stackoverflow.com/questions/51563413

复制
相关文章

相似问题

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