Upgrade to Pro — share decks privately, control downloads, hide ads and more …

David Sweetman: VoiceOver is Awesome

1fa9cb8c7997c8c4d3d251fb5e41f749?s=47 Realm
June 14, 2016

David Sweetman: VoiceOver is Awesome

I think that developers can underestimate howawesome UIAccessibility is. The iPhone has amazing potential as an accessibility tool, and it's used by a majority of visually impaired smartphone users. Well-designed apps really can offer meaningful improvements in peoples' everyday lives. But mobile isn't like other platforms where users can hack together scripts to improve the accessibility of poorly designed apps. It's up to the application developer to provide adequate support for all users, and it's unfortunately common to see apps where VoiceOver interaction is broken.

Apple has made UIAccessibility pretty easy to support, but it does take some intentional effort and an understanding of the tools and usage patterns. In this talk, my goal is to give you basic familiarity with the accessibility tools as a user uses them, basic familiarity with the UIAccessibility API, some UX intuition for users with visual impairments, and some simple helpers and tools to make implementation easier.



June 14, 2016


  1. VoiceOver is Awesome David Sweetman

  2. 1. For real, these technologies are awesome 2. VoiceOver is

    easy to use and understand 3. UIAccessibility is powerful and approachable
  3. First…

  4. None
  5. 1975: The Optacon ‘Optical to Tactile Converter’

  6. Visually Impaired users are often highly motivated and highly skilled

    people, and they’re looking for apps that will help them accomplish things efficiently.
  7. Without a focus on accessibility, the iPhone would be a

    very limiting technology. By adding tools that make it accessible to many people, Apple has tuned it into an incredible accessibility tool
  8. VoiceOver Demo Settings > General > Accessibility > VoiceOver

  9. To interact with your app, users need to be able

    to: • Navigate to any component • Understand the component • Use the component
  10. UIAccessibility

  11. There is always some work for you to do to

    make sure your app is accessible. It’s true that often there isn’t much work to do, but you do need to be intentional about making your app accessible.
  12. 1. Use the views as they are intended to be

    used 2. Make sure they have appropriate descriptions and usage instructions. 3. Try them out! To make sure UIKit views are accessible:
  13. BOOL isAccessibilityElement; UIAccessibility

  14. NSString *accessibilityLabel; UIAccessibility

  15. NSString *accessibilityHint; UIAccessibility

  16. NSString *accessibilityValue; UIAccessibility

  17. UIAccessibilityTraits accessibilityTraits; UIAccessibility

  18. BOOL isAccessibilityElement; NSString *accessibilityLabel; NSString *accessibilityHint; NSString *accessibilityValue; UIAccessibilityTraits accessibilityTraits;

    These will allow us to describe most of the things in our app.