我正在制作一款玩家通过 Action 对声音使用react的游戏 - 鉴于玩游戏不需要视觉元素,而且很多人都是闭着眼睛玩的,不完全兼容 VoiceOver 似乎很遗憾。我目前正在使用 Cocos2D-iPhone 和 CocosDenshion 来处理音频,现在我开始考虑如何构建我的菜单系统来选择级别和配置控件。
在 Cocos2D 的菜单系统中支持 VoiceOver 是否相当容易,或者我应该尝试在我没有使用经验的 UIKit 中创建我的菜单?
最佳答案
我不知道 Cocos 的菜单系统是否支持 VoiceOver,但如果不支持,您可能可以添加您正在寻找的功能,而不必深入研究大量 UIKit
工作。您需要做的就是创建一个 UIView
子类,它会在您的应用程序启动时添加到您的主窗口。然后使用 UIAccessibilityContainer
协议(protocol)和 UIAccessibilityPostNotification
调用允许用户通过 VoiceOver 与您的游戏互动。
UIAccessibilityContainer
协议(protocol)可让您通知 VoiceOver 当前屏幕上有哪些界面元素、它们的标签、它们的特征等。VoiceOver 然后使用此信息让用户在元素之间滑动并获得有关它们的反馈.
当您的游戏改变状态时,您可以改变该协议(protocol)发回的内容,然后发出一个
UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification, nil)
...通知 VoiceOver 屏幕布局已更改。如果只是通过 VoiceOver 说话,比如当您的游戏状态发生变化时,您可以发送不同的通知来说出一些文字:
UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, @"Achievement unlocked!");
关于ios - 我的 Cocos2D-iPhone 游戏可以支持 VoiceOver 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9899285/