Supporting VoiceOver and other accessibility features

Apple's created iOS is the most accessible mobile platform for people of all disabilities. It seems somewhat ridiculous to think that Apple could design the most intuitive smart phone for the blind, using a phone with a solid glass screen, yet they've seen significant success and become a leading manufacturer of products for the disabled due to such technologies as VoiceOver.

In this recipe, we'll discuss the importance of ensuring that our work will be usable by anyone, regardless of his or her physical abilities. By creating an app that can be used by the blind or deaf, we're not just enlarging our potential user base; we're also doing the right thing. Let's take a look at a few ways in which we can help guarantee that accessibility features will work inside of our app.

Getting ready

To complete this recipe, we should take some time to set up VoiceOver on our iPhone or iPad, so that we can best understand how our application works with the feature.

To enable VoiceOver, head to the Settings application. Under the General tab, VoiceOver can be found under Accessibility options.

How to do it...

When VoiceOver is implemented, the user can drag a finger across the screen and have the iPhone or iPad read the contents of the screen out loud. Once the user finds the desired content, a double tap or flick on the screen will perform a desired action.

How to do it...

As shown above, VoiceOver requires users to interact a bit differently with iOS. Yet it's still a simple and intuitive system that requires no ability to actually see the screen. However, this ability heavily relies on the inclusion of native interface elements inside of our application.

For example, standard tools such as the Navigation Bar or Tab Bar are built from the ground up with VoiceOver in mind. If the user taps one of these buttons, the device will read out the button type and text displayed on the button. Standard icons used on these buttons are read out too, so a refresh or trash can icon will be described to the user. If a standard text view is placed on the screen, VoiceOver will read the displayed text as well.

Problems arise if we begin to design custom interface elements, as the speech technology will be unable to read such assets. For example, if we create a custom Navigation Bar, with the title text rendered in Photoshop and not in native text, the user will be unable to gain context on this text. If we create a body of text on screen but create the text in Photoshop in order to apply styling, then render the text in our app as an art image, this sort of element will be inaccessible through VoiceOver as well.

Tip

If we must create a unique interface element that will not contain contextual text help, it is good to know that VoiceOver will read the file names for any custom button that does not contain native text. A button containing a question mark titled Help.png will be read as help. So while we should use native attributes as frequently as possible, this method will help us make our custom features a bit more accessibility friendly.

As additional tools for aiding disabled users, Apple has created tools to allow users to zoom in on any screen or invert all colors on screen to display a higher contrast environment if so desired. Little adjustment will be needed for our interface to support such elements, although the use of native elements will be greatly beneficial with regards to zoom clarity. Native elements will be rendered at the highest resolution that Apple can include, which will look best when the user zooms in for a better view. This method will also be future proof, where if Apple does increase the resolution of a native element in a future iOS update, our interface work will also see the jump in quality for users who must view in to see.

In designing any application, it's often easy to get caught up in a design bubble, where we forget to remember that some users will not interact with or see our work as we do with our own eyes. This is especially true with regards to consideration for disabled users, and thankfully Apple has included powerful software to help make iOS a wonderful platform for all, regardless of physical ability.

As long as we implement the great tools available at our disposal, our interface will be fully capable of interacting with VoiceOver and other accessibility tools. None of the requirements for an accessible application are hard to implement; in fact in many situations, it's more difficult to not support such accessibility tools. In doing so, we'll be making our application available to a wider user base, some of whom may be experiencing mobile applications for the very first time.

How it works...

Apple has made the inclusion of accessibility features exceptionally simple. So, as long as we use standard interface elements or native text, we'll have absolutely nothing to worry about and our application will play nice with features like VoiceOver, inverted colors, zoom, and more.

In designing for the iPhone, we're working with what is arguably the greatest smart phone device ever built for the disabled, specifically for the blind. While the touch screen seems as if it would a hindrance, it provides a blank canvas through an entirely different method of interaction.

To understand the importance of designing our app for accessibility, we must first try to understand how difficult it is for a person with poor vision to use a traditional cell phone or computer. It may first seem as if such a device would be more desirable to use than a touch screen, because it would be easier to find tactile buttons to press down upon than a glass screen with no buttons. The problem with this ideology lies in the fact that the user can't see any of the buttons and as such, the device is mostly useless.

With a glass screen, there are essentially no rules by which to play by with regards to the interface. As non-disabled users, it's a fallacy to think that the iPhone is useless to the blind because we assume that they would use the device in the same manner as someone with perfect vision. In reality, the VoiceOver technology built into iOS for the disabled shows little resemblance to what the traditional user encounters and as such, it's important to handle our interface accordingly.

Working accessibility features into our app is essential because with little to no additional work, we have also created an application that is enjoyable by someone who may have never had the opportunity to enjoy a computer application like ours in the past. In a very real sense, it's our little way to make a difference and create a product that is truly special.

There's more...

We don't have to stop accommodating the disabled once we finish implementing VoiceOver. If we feel so inspired, here are a few tips to help make our app even better for the disabled.

Offering variable text size

It is quite easy to offer variable text sizes inside of our application, and we may want to consider doing so if we have a text heavy app such as an eBook reader.

While the average user may not ever have to change the size of the text inside of our app, it will be greatly appreciated by those who have difficulty in reading the text on the small screen.

Helping color-blindness too

If we have an application with a fair amount of color and art, we could have an interface that is difficult for color-blind people to read and understand.

By using colors that are high in contrast between each other, we can create something that is much more legible for the color-blind user. We can also help create a better interface for such users by not relying on colors alone to represent features or actions inside of an app.

See also

  • Using the 80 percent rule when developing optimal settings in this chapter
  • Configurations in, settings out in this chapter
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset