有没有什么办法可以让 VoiceOver 按命令朗读标签?
Is there any way to have VoiceOver read a label on command?
我想让我的二维码扫描应用在找到二维码时通知用户。对于有视力的用户,这可以使用底部的标签进行更新以通知用户。然而,盲人用户必须再次点击该标签才能让 Voice Over 读取它。我更希望它自动阅读。
我能找到的最接近这个问题的是
UIAccessibility - Read all the labels and buttons on the screen from top to down,这是不可能的。虽然这对我的应用程序来说不是好兆头,但那是一年前的事了。 Apple 是否以任何方式更新了它的 UIAccessibility 协议以允许这样做?
作为最后的手段,我想如果 VoiceOver 打开,我可以播放我自己的 mp3 录音。
您可以随时通过调用让 VoiceOver 说出任何字符串:
UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, NSLocalizedString("QR code has been detected", comment: ""))
Swift 4
UIAccessibility.post(notification: .announcement, argument: "Text")
没有直接的方式告诉 VoiceOver 说出 VoiceOver 光标不在的元素的更新。这(即“手动”说出相同的内容)是一种可行的解决方法。
您可以使用以下方法将 VoiceOver 焦点移动到元素:
UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification, elementToFocusOn)
然后 VoiceOver 将解析并读取与该元素关联的辅助功能属性。
我想让我的二维码扫描应用在找到二维码时通知用户。对于有视力的用户,这可以使用底部的标签进行更新以通知用户。然而,盲人用户必须再次点击该标签才能让 Voice Over 读取它。我更希望它自动阅读。
我能找到的最接近这个问题的是 UIAccessibility - Read all the labels and buttons on the screen from top to down,这是不可能的。虽然这对我的应用程序来说不是好兆头,但那是一年前的事了。 Apple 是否以任何方式更新了它的 UIAccessibility 协议以允许这样做?
作为最后的手段,我想如果 VoiceOver 打开,我可以播放我自己的 mp3 录音。
您可以随时通过调用让 VoiceOver 说出任何字符串:
UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, NSLocalizedString("QR code has been detected", comment: ""))
Swift 4
UIAccessibility.post(notification: .announcement, argument: "Text")
没有直接的方式告诉 VoiceOver 说出 VoiceOver 光标不在的元素的更新。这(即“手动”说出相同的内容)是一种可行的解决方法。
您可以使用以下方法将 VoiceOver 焦点移动到元素:
UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification, elementToFocusOn)
然后 VoiceOver 将解析并读取与该元素关联的辅助功能属性。