ios - NSAttributedKey UIAccessibilitySpeechAttributeQueueAnnouncement

标签 ios swift uiaccessibility

我想发布排队的公告

我尝试使用 UIAccessibilitySpeechAttributeQueueAnnouncement 但我无法将其转换为 NSAttributedStringKey

代码:

let queueAnnouncementKey = NSAttributedStringKey(rawValue: UIAccessibilitySpeechAttributeQueueAnnouncement)

let announcementString = NSAttributedString(string: "something",
                                            attributes: [queueAnnouncementKey : NSNumber(booleanLiteral: true)])

UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, announcementString)

问题:

  • 公告不在队列中,如果此时有正在进行的公告,则忽略我的公告

可能的原因:

  • 我认为我创建 NSAttributedString 的方式有问题

  • 我认为 NSAttributedString 从制作此演示文稿时起已发生变化,因此需要使用 rawValue。

  • 可能是因为它不是正确的原始值,导致它无法工作。

引用:

https://developer.apple.com/videos/play/wwdc2017-215/?time=1627

https://devstreaming-cdn.apple.com/videos/wwdc/2017/215avg3cuo2bu/215/215_whats_new_in_accessibility.pdf?dl=1

最佳答案

别担心,您的代码与您的 annoucementString 是正确的。

但是,您应该阅读 this answer了解用例为什么它不能按您想要的方式工作,因为系统会在需要时接管,然后所有排队的公告都会被删除。

关于ios - NSAttributedKey UIAccessibilitySpeechAttributeQueueAnnouncement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50856959/

相关文章:

iphone - 将 Twitter 与 sharekit 2.0 集成

ios - iPhone 上弹出框的后退箭头

swift - 无法将类型 NSSingleObjectArray 的值转换为 NSMutableArray

ios - UIAccessibility.convertToScreenCoordinates() 总是返回一个 CGRect(0,0,0,0)

ios - UIAccessibilityCustomAction 选择器未被触发

javascript - 使用最小高度的可扩展列表的可访问性问题

ios - 径向 CAGradientLayer 在运行时无法正确渲染

ios - 切换屏幕/ View Controller

ios - Storyboard中动态大小的 UITextView

xcode - xcode 6 中的 EXC_BREAKPOINT