Accessibility in Congress for iOS


iOS for iPhone and iPad provides several useful accessibility features. One of these features, [VoiceOver](, gives visually impaired users the ability to interact with their device. VoiceOver not only reads the content of the screen, but also provides alternate methods of interacting with your device. If you have an iOS device and want to check it out, go into *Settings* → *General* → *Accessibility* → *VoiceOver* to enable it. Then see if you can figure out how to disable it with out looking at your phone!

We’ve spent a lot of time making sure [Congress for iOS]( is usable with VoiceOver enabled. This involves making sure that all controls have useful labels, values and hints on the effects of actions. By default, iOS will make a valiant attempt to read the screen, even if you haven’t written anything explicitly for VoiceOver. In practice this doesn’t always work out well, especially when you are using highly customized controls.

The example in this post is the roll call detail screen. This screen lists information about a roll call vote including the title, results, and how members you follow voted. We didn’t want to let VoiceOver make assumptions about what to read based on the displayed content, so we came up with text variants that make more sense to the user when read out loud. *Cardin, Sen. Benjamin (D) Maryland Vote: Yea* is read to the user as “Senator Benjamin Cardin, Democrat from Maryland, voted Yea”. We also added accessibility features to third-party packages like the [MapBox SDK]( When a map gains focus, it reads the highlighted area to the user; “Map of Maryland District 6”, for example.

If you or someone you know uses accessibility features on iOS devices, we’d love to [get your feedback]( for iOS Accessibility Feedback) on how well it works now and what we can do in the future to make the experience even better.

Congress for iOS on the App Store

Follow Congress for iOS on Twitter [@congress_app](