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
5
310
Recap Accessibility in WWDC 2019
「参加してなくてもついていけるもん!WWDCゴリゴリキャッチアップ会」で発表した内容です。
https://wwdc-gorilla.connpass.com/event/132144/
Masayuki Iwai
June 17, 2019
Tweet
Share
More Decks by Masayuki Iwai
See All by Masayuki Iwai
CodePushとReact Nativeで緊急OTAリリース!了解!🚑
myb
2
1.6k
React Nativeで開発するマルチプラットフォームアプリ
myb
3
380
Other Decks in Technology
See All in Technology
財務データを題材に、 ETLとは何であるかを考える
shoe116
5
1.9k
アクセシブルなマークアップの上に成り立つユーザーファーストなドロップダウンメニューの実装 / 20250127_cloudsign_User1st_FE
bengo4com
1
1.1k
GraphRAG: What I Thought I Knew (But Didn’t)
sashimimochi
0
130
Japan AWS Jr. Championsがお届けするre:Invent2024のハイライト ~ラスベガスで見てきた景色~
fukuchiiinu
0
1.1k
やっちゃえ誤自宅Nutanix
yukiafronia
0
330
AIアプリケーション開発でAzure AI Searchを使いこなすためには
isidaitc
1
280
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
17k
コスト削減と精度維持を両立!類似画像検索システムの内製化成功事例
shutotakahashi
0
350
2週に1度のビッグバンリリースをデイリーリリース化するまでの苦悩 ~急成長するスタートアップのリアルな裏側~
kworkdev
PRO
8
5.9k
インフラコストとセキュリティ課題解決のためのリアーキテクチャリング / srekaigi2025
hgsgtk
3
3.7k
“自分”を大切に、フラットに。キャリアチェンジしてからの一年 三ヶ月で見えたもの。
maimyyym
0
140
SREKaigi.pdf
_awache
2
3.2k
Featured
See All Featured
Become a Pro
speakerdeck
PRO
26
5.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Code Reviewing Like a Champion
maltzj
521
39k
KATA
mclloyd
29
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Music & Morning Musume
bryan
46
6.3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
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!