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
170
About VoiceOver
VoiceOverについて、実例とともにご紹介
coe
October 30, 2018
Tweet
Share
More Decks by coe
See All by coe
すべてのヘルスケアデータを紐解く.pdf
coe
0
3k
About HealthKit nutrition
coe
0
420
Kotlin Dynamic type
coe
0
360
iOSDC 2023 Web in tvOS and watchOS
coe
1
710
iOSDC 2023 Push To Talk
coe
1
2.2k
iOSDC手で触れずにアプリを動かす技術
coe
1
1.9k
iOSDC令和時代のXML処理を考える
coe
3
2.7k
iOSDC 2021 Restore
coe
6
2.1k
詳解Storyboard
coe
7
3.8k
Other Decks in Technology
See All in Technology
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
25
17k
データエンジニアがこの先生きのこるには...?
10xinc
0
450
How to achieve interoperable digital identity across Asian countries
fujie
0
120
Function calling機能をPLaMo2に実装するには / PFN LLMセミナー
pfn
PRO
0
970
『OCI で学ぶクラウドネイティブ 実践 × 理論ガイド』 書籍概要
oracle4engineer
PRO
2
130
BirdCLEF+2025 Noir 5位解法紹介
myso
0
210
成長自己責任時代のあるきかた/How to navigate the era of personal responsibility for growth
kwappa
3
290
【Oracle Cloud ウェビナー】クラウド導入に「専用クラウド」という選択肢、Oracle AlloyとOCI Dedicated Region とは
oracle4engineer
PRO
3
120
Large Vision Language Modelを用いた 文書画像データ化作業自動化の検証、運用 / shibuya_AI
sansan_randd
0
120
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
4
600
ユニットテストに対する考え方の変遷 / Everyone should watch his live coding
mdstoy
0
130
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Designing for humans not robots
tammielis
254
26k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
It's Worth the Effort
3n
187
28k
How to Ace a Technical Interview
jacobian
280
24k
Speed Design
sergeychernyshev
32
1.1k
A better future with KSS
kneath
239
17k
Making Projects Easy
brettharned
119
6.4k
Site-Speed That Sticks
csswizardry
11
890
For a Future-Friendly Web
brad_frost
180
9.9k
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