Help needed in making our app accessible with VoiceOver under iOS 8
By Nath77, 9 October, 2014
Forum
App Development and Programming
We develop apps accessible for children with disabilities. Since the iOS 8 upgrade, we are unable to make VoiceOver works. Is there any developers on this forum that have the same issues?
Thanks for your reply. Unfortunately, we have already gone through the Apple Developer pages without finding any solution. Our app is not released yet. VoiceOver worked fine on iOS 7 but since the upgrade, it doesn't recognize any object.
We created a UIView the same size as the Sprite node and each node keeps a reference of the newly created UIView. When we move the node, we update the UIView position. All views are added as the child of the UIView Controller.
On iOS 8, we noticed that VoiceOver recognize only one element which is the entire screen. Single objects are not recognized.
See if that makes your custom UIView visible with VoiceOver. Once your view is visible with VoiceOver, you should implement more of the UIAccessibility protocol methods to make your application more robust.
Comments
I'm not sure what app you are
I'm not sure what app you are working on. No app name was given, but the first place to look when developing iOS apps is the Apple developer pages. Here is the link to Apple's developer page specific to accessibility. https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/iPhoneAccessibility/Introduction/Introduction.html
VoiceOver Issues
Hi John,
Thanks for your reply. Unfortunately, we have already gone through the Apple Developer pages without finding any solution. Our app is not released yet. VoiceOver worked fine on iOS 7 but since the upgrade, it doesn't recognize any object.
We created a UIView the same size as the Sprite node and each node keeps a reference of the newly created UIView. When we move the node, we update the UIView position. All views are added as the child of the UIView Controller.
On iOS 8, we noticed that VoiceOver recognize only one element which is the entire screen. Single objects are not recognized.
Do you have a solution?
Plain-ole UIViews and UIView
Plain-ole UIViews and UIView subclasses are not (by default) visible with VoiceOver. To make them accessible, you should try setting the relevant properties on UIView as described in the UIAccessibility protocol reference, found here: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIAccessibility_Protocol/index.html
More specifically, I would first try setting these methods:
myView.isAccessibilityElement = YES;
myView.accessibilityLabel = "Test label";
See if that makes your custom UIView visible with VoiceOver. Once your view is visible with VoiceOver, you should implement more of the UIAccessibility protocol methods to make your application more robust.
For more information, please see the accessibility programming guide for iOS: https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/iPhoneAccessibility/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008785