SlideShare a Scribd company logo
1 of 44
Download to read offline
Rizwan Ahmed A
iOS Developer & Technology Evangelist
Zoho Corporation
Making Apps
More Accessible
— Alina Wheeler
“Design is
intelligence
made visible.”
Over 1 billion people live with some
form of disability.
- WHO
Why bother?
Several reasons.
Why bother?
Several reasons.
It’s the right thing to do.
Everyone should get to
experience the joy of using
a well-built software
Challenges
The text is hard to read
Vision
No captions in the video, so can’t
understand the context
Hearing
Can’t progress because I can’t
touch a button
Physical and
motor skills
I can’t read this. I don’t know
what it is conveyed
Literacy and
learning
To make
accessible apps,
we need to have an
accessible mindset
Let’s get started
UIAccessibility
UIAccessibility
The UIAccessibility informal
protocol provides accessibility
information about an app’s
user interface elements.
UIAccessibility
Most of the things are handled
automatically and hence it is
overlooked
Dynamic Type
Dynamic Type
Accomplishes one simple goal -
make sure everyone can read text
at a size of their choosing
Dynamic Type
Set
adjustsFontForContentSizeCategory
to true.
Assign a font vended from
a text style using
UIFont.preferredFont(forTextStyle:)
Dynamic Type
Dynamic Type
Scaling Images
Scaling Images
Set
adjustsImageSizeForAccessibility
ContentSizeCategory to true
Use a vector image
Adjust your constraints accordingly
Scaling Images
Dynamic Type
Demo
Accessibility properties
• isAccessibilityElement
• accessibilityTraits
• accessibilityFrame
• accessibilityLabel
• accessibilityValue
• accessibilityHint
Important
accessibility
properties
A short, to-the-point string that
identi
fi
es the element. It should
be localized
accessibilityLabel
The element’s value if it has one.
This should be localized.
accessibilityValue
Brie
fl
y describes what would happen
if the user interacted with the element.
This should be localized.
accessibilityHint
VoiceOver
VoiceOver
VoiceOver is the marquee
element of accessibility on iOS
VoiceOver
VoiceOver makes use of
accessibility properties for
functioning
VoiceOver
VoiceOver demo from the privacy
fi
rst, mobile analytics tool - Zoho Apptics - https://www.zoho.com/apptics/
Screen Curtain
Three
fi
ngers + Triple Tap
VoiceOver
Demo
VoiceControl
Voice Control
Useful for people who might have di
ffi
culty
touching or interacting with the physical
hardware of their device.
Voice Control
Voice Control demo from the privacy
fi
rst, mobile analytics tool - Zoho Apptics - https://www.zoho.com/apptics/
Voice Control
Demo
Rotors
Rotors
Quick Navigation
It can tell VoiceOver to only
navigate by, or to,
certain elements (such as headers).
Rotors
1st Category
2st Category
Makes use of accessibilityTraits
myTappableLabel.accessibilityTraits = [.header]
Accessibility Inspector
Accessibility
Inspector
A recap
• Dynamic types
• Accessibility properties
• Voice over
• Voice control
• Rotors
• Accessibility inspector
References
- https://ohmyswift.com/
- https://developer.apple.com/
accessibility/
Reach out to me @
https://linktr.ee/rizwan95
Have a great day

More Related Content

Similar to Making Apps More Accessible - Rizwan Ahmed - Swift

Enough is not enough - Test Strategy for Mobile
Enough is not enough - Test Strategy for MobileEnough is not enough - Test Strategy for Mobile
Enough is not enough - Test Strategy for MobilevodQA
 
Test Strategy for Mobile
Test Strategy for MobileTest Strategy for Mobile
Test Strategy for MobileThoughtworks
 
A11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile appsA11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile appsAshton Williams
 
Building And Managing Workplace Inclusivity - People with Disabilities
Building And Managing Workplace Inclusivity - People with DisabilitiesBuilding And Managing Workplace Inclusivity - People with Disabilities
Building And Managing Workplace Inclusivity - People with DisabilitiesBarrierBreak
 
Mobile Accessibility - How To Become Socially Responsible Mobile Developer
Mobile Accessibility - How To Become Socially Responsible Mobile Developer Mobile Accessibility - How To Become Socially Responsible Mobile Developer
Mobile Accessibility - How To Become Socially Responsible Mobile Developer Konstantin Loginov
 
Learnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS PlatformLearnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS PlatformTasneem Sayeed
 
Accessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_TorontoAccessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_TorontoGeorge Zamfir
 
iOS 7 Accessibility
iOS 7 AccessibilityiOS 7 Accessibility
iOS 7 AccessibilityTed Drake
 
iOS 7.1 accessibility for developers
iOS 7.1 accessibility for developersiOS 7.1 accessibility for developers
iOS 7.1 accessibility for developersTed Drake
 
Developing for Multiple Platforms
Developing for Multiple PlatformsDeveloping for Multiple Platforms
Developing for Multiple PlatformsDaniel Pfeiffer
 
Software Accessibility Siddhesh
Software Accessibility SiddheshSoftware Accessibility Siddhesh
Software Accessibility SiddheshSiddhesh Bhobe
 
AT&T WNY Hackathon / Buffalo Open Data
AT&T WNY Hackathon / Buffalo Open DataAT&T WNY Hackathon / Buffalo Open Data
AT&T WNY Hackathon / Buffalo Open DataTim Poulsen
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5Muhamad Arief
 
Getting Started with Voice UI
Getting Started with Voice UIGetting Started with Voice UI
Getting Started with Voice UIIsidore Gotto
 
Usability ≠ Accessibility. An intro to web accessibility for agencies.
Usability ≠ Accessibility. An intro to web accessibility for agencies.Usability ≠ Accessibility. An intro to web accessibility for agencies.
Usability ≠ Accessibility. An intro to web accessibility for agencies.Kate Horowitz
 
#techInColor 2017: Practical Web Accessibility Testing
#techInColor 2017: Practical Web Accessibility Testing#techInColor 2017: Practical Web Accessibility Testing
#techInColor 2017: Practical Web Accessibility TestingMikey Ilagan
 
MOBILE-APP-DEVELOPMENT.for college students
MOBILE-APP-DEVELOPMENT.for college studentsMOBILE-APP-DEVELOPMENT.for college students
MOBILE-APP-DEVELOPMENT.for college studentsAprilJasminePacis
 
Testing flash and flex for accessibility indic threads-q11
Testing flash and flex for accessibility indic threads-q11Testing flash and flex for accessibility indic threads-q11
Testing flash and flex for accessibility indic threads-q11IndicThreads
 
Learning interactions on mobile slideshare
Learning interactions on mobile   slideshareLearning interactions on mobile   slideshare
Learning interactions on mobile slideshareRaptivity
 
Learning's from mobile testing
Learning's from mobile testingLearning's from mobile testing
Learning's from mobile testingVikrant Chauhan
 

Similar to Making Apps More Accessible - Rizwan Ahmed - Swift (20)

Enough is not enough - Test Strategy for Mobile
Enough is not enough - Test Strategy for MobileEnough is not enough - Test Strategy for Mobile
Enough is not enough - Test Strategy for Mobile
 
Test Strategy for Mobile
Test Strategy for MobileTest Strategy for Mobile
Test Strategy for Mobile
 
A11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile appsA11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile apps
 
Building And Managing Workplace Inclusivity - People with Disabilities
Building And Managing Workplace Inclusivity - People with DisabilitiesBuilding And Managing Workplace Inclusivity - People with Disabilities
Building And Managing Workplace Inclusivity - People with Disabilities
 
Mobile Accessibility - How To Become Socially Responsible Mobile Developer
Mobile Accessibility - How To Become Socially Responsible Mobile Developer Mobile Accessibility - How To Become Socially Responsible Mobile Developer
Mobile Accessibility - How To Become Socially Responsible Mobile Developer
 
Learnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS PlatformLearnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS Platform
 
Accessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_TorontoAccessibility and Web Technologies @HTML5_Toronto
Accessibility and Web Technologies @HTML5_Toronto
 
iOS 7 Accessibility
iOS 7 AccessibilityiOS 7 Accessibility
iOS 7 Accessibility
 
iOS 7.1 accessibility for developers
iOS 7.1 accessibility for developersiOS 7.1 accessibility for developers
iOS 7.1 accessibility for developers
 
Developing for Multiple Platforms
Developing for Multiple PlatformsDeveloping for Multiple Platforms
Developing for Multiple Platforms
 
Software Accessibility Siddhesh
Software Accessibility SiddheshSoftware Accessibility Siddhesh
Software Accessibility Siddhesh
 
AT&T WNY Hackathon / Buffalo Open Data
AT&T WNY Hackathon / Buffalo Open DataAT&T WNY Hackathon / Buffalo Open Data
AT&T WNY Hackathon / Buffalo Open Data
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5
 
Getting Started with Voice UI
Getting Started with Voice UIGetting Started with Voice UI
Getting Started with Voice UI
 
Usability ≠ Accessibility. An intro to web accessibility for agencies.
Usability ≠ Accessibility. An intro to web accessibility for agencies.Usability ≠ Accessibility. An intro to web accessibility for agencies.
Usability ≠ Accessibility. An intro to web accessibility for agencies.
 
#techInColor 2017: Practical Web Accessibility Testing
#techInColor 2017: Practical Web Accessibility Testing#techInColor 2017: Practical Web Accessibility Testing
#techInColor 2017: Practical Web Accessibility Testing
 
MOBILE-APP-DEVELOPMENT.for college students
MOBILE-APP-DEVELOPMENT.for college studentsMOBILE-APP-DEVELOPMENT.for college students
MOBILE-APP-DEVELOPMENT.for college students
 
Testing flash and flex for accessibility indic threads-q11
Testing flash and flex for accessibility indic threads-q11Testing flash and flex for accessibility indic threads-q11
Testing flash and flex for accessibility indic threads-q11
 
Learning interactions on mobile slideshare
Learning interactions on mobile   slideshareLearning interactions on mobile   slideshare
Learning interactions on mobile slideshare
 
Learning's from mobile testing
Learning's from mobile testingLearning's from mobile testing
Learning's from mobile testing
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 

Making Apps More Accessible - Rizwan Ahmed - Swift