Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Recap Accessibility in WWDC 2019
Search
Masayuki Iwai
June 17, 2019
Technology
340
5
Share
Recap Accessibility in WWDC 2019
「参加してなくてもついていけるもん!WWDCゴリゴリキャッチアップ会」で発表した内容です。
https://wwdc-gorilla.connpass.com/event/132144/
Masayuki Iwai
June 17, 2019
More Decks by Masayuki Iwai
See All by Masayuki Iwai
CodePushとReact Nativeで緊急OTAリリース!了解!🚑
myb
2
1.9k
React Nativeで開発するマルチプラットフォームアプリ
myb
3
400
Other Decks in Technology
See All in Technology
AI時代のガードレールとしてのAPIガバナンス
nagix
0
220
[OpsJAWS 40]リリースしたら終わり、じゃなかった。セキュリティ空白期間をAWS Security Agentで埋める
sh_fk2
3
220
Bill One 開発エンジニア 紹介資料
sansan33
PRO
6
18k
AI時代における技術的負債への取り組み
codenote
0
1.3k
「責任あるAIエージェント」こそ自社で開発しよう!
minorun365
9
1.8k
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
100
Choose your own adventure in agentic design patterns
glaforge
0
120
ARIA Notifyについて
ryokatsuse
1
120
ぼくがかんがえたさいきょうのあうとぷっと
yama3133
0
180
CloudSec JP #005 後締め ~ソフトウェアサプライチェーン攻撃から開発者のシークレットを守る~
lhazy
0
230
最近の技術系の話題で気になったもの色々(IoT系以外も) / IoTLT 花見予定会(たぶんBBQ) @都立潮風公園バーベキュー広場
you
PRO
1
220
"SQLは書けません"から始まる データドリブン
kubell_hr
2
470
Featured
See All Featured
Bash Introduction
62gerente
615
210k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
110
Automating Front-end Workflow
addyosmani
1370
200k
Typedesign – Prime Four
hannesfritz
42
3k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
570
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
510
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
350
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
200
Darren the Foodie - Storyboard
khoart
PRO
3
3.3k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
880
Transcript
Recap Accessibility in WWDC 2019 Masayuki Iwai@myb #wwdc_rusuban
自己紹介 岩井雅幸@myb モバイル・アプリケーション・エンジニア at Unity Technologies Japan 以前はWebデザイン・開発、Flashコンテ ンツ制作、iOSアプリ、ゲーム制作など
著書に「uGUIではじめる Unity UIデザイン の教科書」。最近はもっぱらReact Native
Accessibility
None
None
None
Accessibility?
"Accessibility features help a wide range of people interact with
their devices. For many, accessibility is a necessity. For others, it is practicality." https://developer.apple.com/documentation/uikit/accessibility/
https://developer.apple.com/documentation/uikit/accessibility/
VoiceOver Color Inversion Large Text Zoom Magnifier Closed Captioning Visual
Notifications Haptic Notifications Type to Siri Switch Control Siri Assistive Touch Speak Screen Typing Feedback Safari Reader Full Keyboard Access Voice Control
None
Voice Control
None
Accessibility Element
Accessibility Element • isAccessibilityElement == true • UIKitの標準コントロールは デフォルトでtrue •
UIAccessibilityElement • accessibilityTraitsで要素の性質を 指定
Accessibility Label
Accessibility Label button.accessibilityLabel = NSLocalizedString("Add", comment: "")
Accessibility Label Button(action: {}) { Image("plus_sign") } .accessibility(label: Text(NSLocalizedString("Add", comment:
"")))
None
Accessibility Label • とにかくラベルを追加する! • ラベルには要素のタイプを含まないようにする • UIの変化に合わせてラベルも変える • コンテキストが伝わるラベルにする、ただし冗長すぎないように
• 意味のあるアニメーションにもラベルを追加する Writing Great Accessibility Labels • WWDC 2019 • Session 254
None
Accessibility Label • とにかくラベルを追加する! • ラベルには要素のタイプを含まないようにする • UIの変化に合わせてラベルも変える • コンテキストが伝わるラベルにする、ただし冗長すぎないように
• 意味のあるアニメーションにもラベルを追加する Writing Great Accessibility Labels • WWDC 2019 • Session 254
https://ja.wikipedia.org/wiki/小瀬川
Accessibility Label • とにかくラベルを追加する! • ラベルには要素のタイプを含まないようにする • UIの変化に合わせてラベルも変える • コンテキストが伝わるラベルにする、ただし冗長すぎないように
• 意味のあるアニメーションにもラベルを追加する Writing Great Accessibility Labels • WWDC 2019 • Session 254
None
UIAccessibilityCustomAction
UIAccessibilityCustomAction let action = UIAccessibilityCustomAction( name: "Custom", target: self, selector:
#selector(handleAction(_:)) ) @objc func handleAction(_ action: UIAccessibilityCustomAction) -> Bool { // Action return true } Making Apps More Accessible With Custom Actions • WWDC 2019 • Session 250
UIAccessibilityCustomAction let action = UIAccessibilityCustomAction( name: "Custom" ) { (customAction:
UIAccessibilityCustomAction) -> Bool in // Action return true } Making Apps More Accessible With Custom Actions • WWDC 2019 • Session 250 NEW
UIAccessibility
UIAccessibility static var isVideoAutoplayEnabled: Bool { get } static let
videoAutoplayStatusDidChangeNotification: NSNotification.Name Visual Design and Accessibility • WWDC 2019 • Session 244 NEW
UIAccessibility static var shouldDifferentiateWithoutColor: Bool { get } static let
differentiateWithoutColorDidChangeNotification: String Visual Design and Accessibility • WWDC 2019 • Session 244 NEW
Environment Overrides
More Information • Human Interface Guideline/Accessibility • UIKit Accessibility
More Information • Writing Great Accessibility Labels • WWDC 2019
• Session 254 • Making Apps More Accessible With Custom Actions • WWDC 2019 • Session 250 • Visual Design and Accessibility • WWDC 2019 • Session 244 • Accessibility Inspector • WWDC 2019 • Session 257 • Accessibility in SwiftUI • WWDC 2019 • Session 238
Thank you!