覆盖 UITextField 中的 VoiceOver 消息 - iOS Accessibilty

Roy*_*ore 5 accessibility ios voiceover uiaccessibility

我有一个包含“\xc2\xa324 pm”的 UITextField,但我希望画外音说“\xc2\xa324 每月”。通过设置:

\n\n
[textView setAccessibilityLabel:@"\xc2\xa324 per month"];\n
Run Code Online (Sandbox Code Playgroud)\n\n

VoiceOver 读出“\xc2\xa324 每月 \xc2\xa324 下午”。

\n\n

如何阻止 UITextField 中的消息被读出?

\n

Mox*_*oxy 5

您应该设置辅助功能标签来描述文本字段(就好像它是一个键)及其值的辅助功能值。

\n\n
textField.accessibilityLabel = NSLocalizedString(@"Price", nil);\n// textField.accessibilityValue = @"\xc2\xa324 per month";\ntextField.accessibilityValue = [self transformedPrice:textField.text];\n
Run Code Online (Sandbox Code Playgroud)\n\n

-transformedPrice:应该执行任何操作将文本字段中的实际文本转换为画外音中应使用的文本。(不要忘记本地化)

\n