Getting Started with iOS Accessibility in Swift 3 (Intro)
What does it mean to be accessible? Why is it important for something to be accessible? If you’re an iOS Developer or are familiar with Apple’s iOS products such as the iPhone or iPad, you might already be aware of the various accessibility offerings that these devices provide to those who might be visually or hearing impaired. One of the special things about programming for Apple products is the ability to make your apps available for everyone to use. Apple provides a lot of different ways to do this.
In this blog, I’ll quickly go over the different ways that you can make your app accessible on an iPhone and an iPad. It’s important to note that accessibility can mean helping many people — those that are visually impaired, hearing impaired, those that have physical or motor skill impairments, and those who may want to use the accessibility features to help with learning or literacy. This blog post will focus only on visual accessibility.
For the iPhone and iPad, Apple provides the following accessibility features:
- with gestures (touching, tapping, or dragging around the screen will tell you what’s there)
- with text input (every character is read out loud as you tap it and again to confirm when you select it)
- with a rotor (a virtual control by rotating a two finger dial to navigate a page)
- with a braille keyboard (available through the rotor to navigate through the phone)
- with multiple braille displays (a device that allows a user to read the contents one text line at a time in the form of Braille characters)
- with pronunciation editor (allows you to customize the way some words or phrases are pronounced)
2. Display Accommodations
- invert colors (makes it easier to distinguish things for people with sensitivity to brightness, low vision or color blindness)
- reduce white point (lessens the intensity of bright colors)
- enable grayscale (makes it easier for color blind people to differentiate between red/green/blue when they see shades of gray)
- change color filters (to meet various forms of color blindness)
3. Font Adjustments
- activate Larger Dynamic Type (makes the text larger and easier to read)
- activate bold text (makes the text heavier)
With Zoom, you can magnify any location on the screen. You’re able to either do Full Screen Zoom or WindowZoom (above) and can select a type of Zoom Filter (None, Inverted, Grayscale, Grayscale Inverted, or Low Light). A user is able to zoom up to 15x (1500%) a view’s size.
5. Audio Description
A user can watch movies (bought from the iTunes store) that come with detailed audio descriptions (labeled AD). These movies will provide an audio description of every movie scene!
A user can turn their iPhone/iPad into a magnifying glass by turning this on in the Accessibility settings and enabling it (triple tapping on the home button). A camera-like view appears and you can zoom in magnify any object you want to get close-up of.
7. Speak Screen
This feature will read the entire screen aloud to a user. You can change the settings on Speak Screen to adjust speaking rate or voice’s dialect.
Apple’s AI aka “intelligent assistant” (only available with wifi and in certain areas) can help you send messages, get the weather, answer questions, and turn on other accessibility features (VoiceOver). You can access Siri by pressing hard on the home button or (if connected to power) can “Hey Siri”.
If you click anywhere where you can type text, the microphone on the keyboard will allow your speech to be transcribed into text.
Why Accessible Apps Matter
As a developer, it takes intention to incorporate accessibility into an app you’re building. There aren’t enough apps that are fully accessible. If Apple provides these tools, we should be utilizing them in our apps as much as possible.
One of most powerful accessibility features, VoiceOver, should be used in every app. By utilizing VoiceOver in your app, you’ll reach more users, you’ll make you app usable without a user viewing the screen, and it’s the right thing to do! Everyone should have access to the wonderful app you worked so hard on! 🌮
In my next post, I’ll walk through how to implement some VoiceOver features into your app.
I challenge you to try a new accessibility feature on your device and put yourself in the shoes of a user who relies on this technology to navigate their day!