ios - UIKeyboardType.numberPad 总是英文
问题描述
我正在尝试通过 Voice Over 使我的应用程序可以访问。在其中一个屏幕上,我有一个用于输入数字的文本字段。没什么特别的,只是默认UITextField
设置为keyboardType UIKeyboardType.numberPad
。Voice Over 实际上运行良好,可以读取所有选定的键盘按钮。问题是键盘总是英文的(数字下有英文字母)。当您将 iPhone 语言切换为英语以外的语言时,Voice Over 会混合两种语言:
- 当您通过单击在键盘上选择数字时,Voice Over 会以当前的 iPhone 语言(在我的情况下为俄语)阅读它
- 当您双击(在文本字段中输入数字)时,旁白总是以英文朗读
我在设置中所做的更改:
- 将 iPhone 语言设置为俄语
- 将区域设置为俄罗斯(不确定是否重要)
- 在“常规 -> 键盘 -> 键盘”中将俄语键盘移至列表顶部
但没有任何帮助。UIKeyboardType.numberPad
并且UIKeyboardType.decimalPad
总是英语(UIKeyboardType.default
应该是俄语)
我错过了什么吗?
我还尝试以编程方式更改键盘语言 - iPhone:以编程方式更改键盘语言。但这也没有用。
解决方案
这确实令人困惑,但听起来您的应用实际上并未针对俄语进行本地化。尝试对其进行本地化,看看是否会有所改善。
推荐阅读
- python - 是否可以从单独的模块加载 SqlAlchemy 表定义而不会导致“未使用的导入语句”?
- powershell - 使用 Powershell 从 AD 中提取属性
- python-3.x - 如何在python中将每2行与2列连接起来?
- javascript - 无法使用完全相同的代码在某些页面上加载资源
- python - 即使两个对象具有相同的 id,“is”操作也会返回 false
- css - 在柔性显示中水平居中图像?
- javascript - 如何在 Matter.js 中模糊单个对象?
- ms-access - 更新查询不返回任何值
- java - Jackson JSONproperty 未将字段绑定到变量
- c# - Linq Where 语句不考虑时间