gpt4 book ai didi

uitextfield - 使用 VoiceOver 将 UITextField 读取为数字

转载 作者:行者123 更新时间:2023-12-05 01:12:46 29 4
gpt4 key购买 nike

我们的应用程序有几个 UITextField,用户可以在其中输入字母数字输入代码,例如“AA149873A”。

我们希望画外音将这些读为“A A 1 4 9 8 7 2 A”,但它却将数字读为数字:“十四万九千,八百七十三”。

有没有什么方法可以配置 UITextField,让它知道它的内容不应该被认为是数字,而是单个数字?

谢谢。

最佳答案

We'd like voice over to read these as "A A 1 4 9 8 7 2 A", but it instead reads the digits as a number: "One hundred and forty nine thousand, eight hundred and seventy three".

达到目标的最快方法是在 UITextFieldaccessibilityValue在每个字符之间添加空格,如下所示:🤓

class AccessibilityTextField: UITextField {

var _str: String?
override var text: String? {
get { return _str}
set {
_str = newValue!
accessibilityValue = _str!.map{String($0)}.joined(separator: " ")
}
}

convenience init() { self.init() }

required init?(coder: NSCoder) { super.init(coder: coder) }
}

我没有实现所有文本字段委托(delegate)来测试它 ⟹ 我只使用 UITextField 添加了 "BB0024FG" 纯文本创建了一个空白项目并进行了更改我的 View Controller 的 viewDidAppear 中的文本:

myTextField.text = "AA14987A"

最后,VoiceOver 会逐个拼出每个字符,而无需读出最初的纯文本。 👍

根据这个原理,您可以通过一种方式让 VoiceOver 知道 UITextField 内容必须被视为单个数字。 😉

关于uitextfield - 使用 VoiceOver 将 UITextField 读取为数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61527785/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com