首页 文章

覆盖UITextField中的VoiceOver消息 - iOS Accessibilty

提问于
浏览
3

我有一个UITextField,其中包含“24英镑”,但我希望画外音说“每月24英镑” . 通过设置:

[textView setAccessibilityLabel:@"£24 per month"];

VoiceOver读出“每月24英镑24英镑” .

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

2 回答

  • 3

    您应该设置可访问性标签以描述文本字段(就好像它是一个键)以及其值的可访问性值 .

    textField.accessibilityLabel = NSLocalizedString(@"Price", nil);
    // textField.accessibilityValue = @"£24 per month";
    textField.accessibilityValue = [self transformedPrice:textField.text];
    

    -transformedPrice: 应该做任何操作,将textField中的实际文本转换为语音中应该使用的内容 . (别忘了本地化)

  • 1

    accessibilityValue 设置为 nil 或空白字符串,将 accessibilityLabel 设置为 @"£24 per month" .

相关问题