Button bars should inherit the accessibility properties of their info items

Originator:brent
Number:rdar://7079944 Date Originated:21-Jul-2009 10:26 PM
Status:Open Resolved:
Product:iPhone SDK Product Version:3.0
Classification: Reproducible:Always
 
Summary:
While it is possible to add accessibility properties to an entire toolbar or navigation bar, there is no simple way to add it to the sub-elements of the bar; nor is it possible to customize the accessibility values of a tab bar.  Since UIAccessibility is declared on NSObject, I believe that we should be able to set accessibility properties on bar button items, navigation items, and tab bar items, and that those properties should then be reflected in the on-screen views for VoiceOver users.

Steps to Reproduce:
1. Create a navigation controller and a view controller to be its root.
2. Set any of the accessibility properties on the view controller's navigation item.
3. Use VoiceOver or the Accessibility Inspector to examine the navigation bar.

Expected Results:
The property you set on the navigation item is reflected in the on-screen view, and thus exposed via VoiceOver.

Actual Results:
The property is ignored; the navigation item's title property is read.

Regression:
Note that similar tests can be devised for bar button items and navigation items, with similar results.

Notes:
The behavior I want can be emulated by either adding accessibility info to the private subviews of the bar, or by declaring the accessibility container methods in a category on the bar.  One of my apps takes the latter approach, which does work for it, but imperfectly; for example, changing the accessibility properties on the original navigation item doesn't propagate to the navigation bar.  Obviously UIKit and UIAccessibility are in a much better position to implement this sensibly than third-party developers are.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!