TextField 在 Voice Over 上宣布 Label 和 AccessibilityLabel

TextField announcing Label and AccessibilityLabel on Voice Over

设置 UILabelAccessibilityLabel 时,AccessibilityLabel 会在画外音中播报而不是 Text。但是,当设置 UITextFieldAccessibilityLabel 时,AccessibilityLabel AND Text 会在旁白中宣布。

如何覆盖语音提示中的 UITextField.Text?我不想宣布 Text,我需要宣布其他事情,因为我的文本是日期,例如 01/10/2021,我想宣布“2021 年 1 月 10 日”。当我设置 AccessibilityLabel 时,它宣布“2021 年 1 月 10 日 01/10/2021”。

看下面的定义

尝试将 accessibilityHintaccessibilityLabel 设置为空字符串,并将 AccessibilityValue 设置为您想要的。

textfield.AccessibilityLabel = "";
textfield.AccessibilityHint = "";
textfield.AccessibilityValue = "the string you want ";

参考

Override VoiceOver message in UITextField - iOS Accessibilty

change UITextField accessibility description