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
About VoiceOver
Search
coe
October 30, 2018
Technology
1
180
About VoiceOver
VoiceOverについて、実例とともにご紹介
coe
October 30, 2018
Tweet
Share
More Decks by coe
See All by coe
すべてのヘルスケアデータを紐解く.pdf
coe
0
3.1k
About HealthKit nutrition
coe
0
450
Kotlin Dynamic type
coe
0
380
iOSDC 2023 Web in tvOS and watchOS
coe
1
890
iOSDC 2023 Push To Talk
coe
1
2.4k
iOSDC手で触れずにアプリを動かす技術
coe
1
2.1k
iOSDC令和時代のXML処理を考える
coe
3
2.9k
iOSDC 2021 Restore
coe
6
2.2k
詳解Storyboard
coe
7
3.9k
Other Decks in Technology
See All in Technology
AWS re:Invent2025最新動向まとめ(NRIグループre:Cap 2025)
gamogamo
0
150
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
130
1万人を変え日本を変える!!多層構造型ふりかえりの大規模組織変革 / 20260108 Kazuki Mori
shift_evolve
PRO
5
640
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
310
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
20251225_たのしい出張報告&IgniteRecap!
ponponmikankan
0
110
AI with TiDD
shiraji
1
330
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
290
Bedrock AgentCore Evaluationsで学ぶLLM as a judge入門
shichijoyuhi
2
310
CQRS/ESになぜアクターモデルが必要なのか
j5ik2o
0
330
AIと融ける人間の冒険
pujisi
0
110
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
65
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
A Tale of Four Properties
chriscoyier
162
23k
Side Projects
sachag
455
43k
4 Signs Your Business is Dying
shpigford
187
22k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
180
Fireside Chat
paigeccino
41
3.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
120
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
89
Code Reviewing Like a Champion
maltzj
527
40k
Transcript
CopyrightɹR-learningɹInc. All Rights Reserved. !1 VoiceOver ʹ͍ͭͯޠΔ 2018/10/31 ڧ
ࣗݾհ 2 •ڧʢtsuyoshi hyugaʣ •@coffeegyunyu •iPhone(2009-) •Android(2010-) •Titanium •tvOS •גࣜձࣾΞʔϧϥʔχϯάʹͯओʹ
iPhoneɺAndroidͷडୗ։ൃΛ୲
VoiceOver 3 VoiceOver ͬͯԿʁ
VoiceOver 4 ΞϓϦέʔγϣϯͷϢʔβΠϯλʔϑΣΠ εΛઆ໌͠ɺԻͱαϯυΛ༻ͯ͠Ϣ ʔβʹΑΔΞϓ ϦέʔγϣϯͷϏϡʔ ͱίϯτϩʔϧͷҠಈΛࢧԉ͠·͢ɻ VoiceOverͱ iOSΞΫηγϏϦςΟ ϓϩάϥϛϯάΨΠυ
ΑΓൈਮ
VoiceOver 5 ςΩετಡΈ্͛ػೳ ࢹ֮తͳใʢςΩετɺը૾ɺetcʣΛԻ ͰಡΈ্͛Δػೳ ΞΫηγϏϦςΟͷҰछ
VoiceOver 6 ΞΫηγϏϦςΟ ྸମোͷ༗ແʹؔͳ͘ɺ୭Ͱ ඞཁͱ͢Δใʹ؆୯ʹͨͲΓண͚ɺར༻ Ͱ͖Δ ಡΈ্͛ɺࢹ֮αϙʔτͷͨΊͷػೳ
!7
!8
VoiceOver 9 ࿈ܞ͞Ε͍ͯΔΞϓϦ ݁ߏগͳ͍
VoiceOver 10 ྫɿγϣοϐϯάΞϓϦ Kaeru(ΧΤϧ) • UICollectionViewController • ηϧUIImageViewΛแ • ը૾ωοτϫʔΫ͔Βऔಘ
• ը૾ΫϦοΫͰৄࡉʹભҠ
VoiceOver 11 ྫɿγϣοϐϯάΞϓϦ Kaeru(ΧΤϧ) • ৄࡉͰɺങ͏Ϙλ ϯͱ͓ؾʹೖΓϘλϯ͕ ଘࡏ͢Δ Կͷมແ͍ γϣοϐϯάΞϓϦ
VoiceOver 12 VoiceOver ONʹ͢Δͱ͜͏ͳΔ
VoiceOver 13 1 ը૾Λλοϓͯ͠ɺϑϦο Ϋͯ͠ʹϑΥʔΧε ͕ͨΒͳ͍
VoiceOver 14 1 ը૾Λλοϓͯ͠ɺϑϦο Ϋͯ͠ʹϑΥʔΧε ͕ͨΒͳ͍ ങ͑ͳ͍ʂ
VoiceOver 15 1 ͦΕͧΕͷηϧͰɺ cell.imageView.isAccessibilityElement = true ͱ͢Δ͜ͱͰϑΥʔΧε͕ ͨΔΑ͏ʹͳΔ ങ͑Δʂ
VoiceOver 16 2 ʹϑΥʔΧεͯ͠ɺ ͦΕ͕Կͳͷ͔Θ͔Βͳ͍
VoiceOver 17 2 ͜ΕԿʁ ͦͦʁ ͦΕͱԿ͔ͷϘλϯʁ ʹϑΥʔΧεͯ͠ɺ ͦΕ͕Կͳͷ͔Θ͔Βͳ͍
VoiceOver 18 2 ը૾ͱಉ࣌ʹ໊औಘ͠ɺ cell.imageView.accessibilityLa bel ʹ໊Λઃఆ͢Δ Χόϯ
VoiceOver 19 2 cell.imageView.accessibilityTr aits = UIAccessibilityTraitImage ʹ͍ͯ͠Εɺը૾͔Β அͯ͠ಡΈ্͛ͯ͘ΕΔ (iOS11Ҏ্Ͱ3ຊࢦλον)
ࡒ গ͠΅͚ͨ ໌Δ͍
VoiceOver 20 3 ߪೖϘλϯʹϑΥʔΧεΛ ͯͨΒɺҙຯෆ໌ͳಡΈ ্͕͛ߦΘΕͨ ͥΖʹʔ͍ͪͪ͋ʔΔͼʔ ʹ͍ͪ Ϧιʔε໊(0218_rd2_buy_8)Λ ಡΜͰΔ
VoiceOver 21 3 ༰ʹΑͬͯʮൃԻෆೳʯ ͱಡΈ্͛ΒΕΔ ͓ͭΜ;ͷ͏
VoiceOver 22 3 ͜ΕͰങ͑ͳ͍ accessibilityLabelͷઃఆΛ Εͣʹʂ
VoiceOver 23 4 UILabelԿ͠ͳͯ͘ େৎʁ
VoiceOver 24 4 UILabelԿ͠ͳͯ͘ େৎʁ ΧΤϧͱ͍͏ΞϓϦΛμ ϯϩʔυͨͭ͠Γ͚ͩͲ ِͳͷ͔ͳʁ ͚Δʔ
VoiceOver 25 4 ΧΤϧ UILabelσϑΥϧτͰtextͷ ༰ΛಡΈ্͛Δ͕ ݻ༗໊ࢺͳͲɺҙਤ͠ͳ͍ಡ Έ্͛Λ͙ͨΊ accessibilityLabelͷઃఆݕ౼ ͠Α͏
VoiceOver 26 4 kɑ.e.ɾɯ.ɯ(ࠃࡍԻه߸) iOS11Ͱ͋Εɺ accessibilityAttributedLabel Λ༻͍ͯͷಡΈ্͛Մೳ let attributedString =
NSMutableAttributedString(string: ”Kaeru") attributedString.addAttribute( NSAttributedStringKey(rawValue: UIAccessibilitySpeechAttributeIPANotation), value: "kɑ.e.ɾɯ.ɯ", range: NSRange(location: 0, length: 5))
VoiceOver 27 4 ଟ͘ͷ߹ɺ ϒϥϯυ໊=ΞϓϦ໊ ͩͱࢥ͏ͷͰɺ plistʹ CFBundleSpokenNameͷઃఆ Εͣʹʂ ΧΤϧ
VoiceOver 28 ͓·͚ ͦͷ1 ϦπΠʔτΛߦ͏ ֤ίϯϙʔωϯτʹ accessibilityLabelઃఆࡁΈ ϦπΠʔτ
VoiceOver 29 ͓·͚ ͦͷ1 ηύϨʔλೝࣝͰ͖ͳ͍ ͨΊɺϦπΠʔτϘλϯ͕ɺ ʮԿʹରͯ͠ʯͷϦπΠʔ τ͔Θ͔Βͳ͍ ͜ͷϦπΠʔτϘλϯ ্ԼͲͬͪΛϦπΠʔτ͢Δͷʁ
VoiceOver 30 ͓·͚ ͦͷ1 վળҊͱͯ͠ɺ UITableViewCellશମͷΈ ΛΞΫηγϒϧʹͯ͠ɺϦ πΠʔτͷΞΫγϣϯη ϧબޙͷը໘Ͱߦ͏
VoiceOver 31 ͓·͚ ͦͷ1 ΞΫγϣϯΛߦ͏ؾ͕ͳ͍πΠʔ τͷϘλϯͷϑΥʔΧε ແ͘ͳΔͷͰɺ λΠϜϥΠϯӈϑϦοΫͰҠ ಈ͍͢͠
VoiceOver 32 ͓·͚ ͦͷ2 χϡʔεΞϓϦ χϡʔεݟग़͚ͩ͠ هࣄʹؔͯ͠Ϣʔβʔͷ ϩάΠϯ͕ඞཁ
VoiceOver 33 ͓·͚ ͦͷ2 χϡʔεΞϓϦ VoiceOverΛONʹ͢Δͱه ࣄʹϑΥʔΧε͕ͨΓɺه ࣄͷ༰͕ಡ·Εͯ͠·͏ →ϩάΠϯͷҙຯͳ͠
VoiceOver 34 ͓·͚ ͦͷ2 χϡʔεΞϓϦ ϩάΠϯͷ༗ແʹΑͬͯهࣄ ͷisAccessibilityElementͷ ঢ়ଶΛΓସ͑Δ͖ ΞΫηγϏϦςΟʹਖ਼͘͠ର Ԡ͠ͳ͍͜ͱɺҙਤ͠ͳ͍
ڍಈΛট͘͜ͱ͕͋Δ
VoiceOver 35 ·ͱΊ
VoiceOver 36 •iOSʹɺVoiceOverͱ͍͏ɺը໘ಡΈ্͛ ػೳ͕ඪ४Ͱଘࡏ͢Δ •ରԠ͞Ε͍ͯΔαʔϏε݁ߏগͳ͍ •VoiceOverʹରԠ͢Δʹઃܭ࣮͕ඞཁ •VoiceOverʹରԠ͢Δ͜ͱʮਖ਼͍͜͠ͱͰ ͋Δʯ ·ͱΊ
!37