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
アラートを効果的に扱おう
Search
KAWASHIMA Yoshiyuki
February 14, 2024
Programming
1
380
アラートを効果的に扱おう
KAWASHIMA Yoshiyuki
February 14, 2024
Tweet
Share
More Decks by KAWASHIMA Yoshiyuki
See All by KAWASHIMA Yoshiyuki
SwiftUI Drag & Drop で困った話
ykws
0
50
GitHub PR Milestone Check を使ってみた
ykws
0
49
Kotlin 2.0.20 から標準ライブラリで UUID が使えるようになりました
ykws
1
280
コードの作者がいるうちに聞こう
ykws
2
540
visionOS に備える
ykws
0
250
モバイルアプリの操作方法を疑ってみる
ykws
0
1.5k
Other Decks in Programming
See All in Programming
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.8k
マイコンでもRustのtestがしたい その2/KernelVM Tokyo 18
tnishinaga
2
2.3k
あのころの iPod を どうにか再生させたい
orumin
2
2.5k
令和最新版手のひらコンピュータ
koba789
14
8k
パスタの技術
yusukebe
1
400
書き捨てではなく継続開発可能なコードをAIコーディングエージェントで書くために意識していること
shuyakinjo
1
310
自作OSでDOOMを動かしてみた
zakki0925224
1
1.4k
TDD 実践ミニトーク
contour_gara
0
150
20250808_AIAgent勉強会_ClaudeCodeデータ分析の実運用〜競馬を題材に回収率100%の先を目指すメソッドとは〜
kkakeru
0
210
A Gopher's Guide to Vibe Coding
danicat
0
170
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
210
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
470
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Become a Pro
speakerdeck
PRO
29
5.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Designing for humans not robots
tammielis
253
25k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
Transcript
YUMEMI.grow Mobile #10 2024.2.14 ΞϥʔτΛޮՌతʹѻ͓͏ KAWASHIMA Yoshiyuki
͍͑ͨ͜ͱ • Ϣʔβ͕ΞϥʔτΛܰࢹ͠ͳ͍Α͏ʹ
ใݯ ώϡʔϚϯΠϯλʔϑΣʔεΨΠυϥΠϯ https://developer.apple.com/jp/design/human-interface-guidelines/ ϚςϦΞϧσβΠϯ https://m3.material.io/
લఏ ৄࡉώϡʔϚϯΠϯλʔϑΣʔεΨΠυϥΠϯɺϚςϦΞϧσβΠϯ ʹॻ͍ͯ͋Γ·͢ɻ ࠓճͷൃදͰɺ۩ମྫͱݟൺͳ͕ΒཧղΛਂΊ͍͖͍ͯͨͱࢥ͍ ·͢ɻ
༻ޠͷཧ • ώϡʔϚϯΠϯλϑΣʔεΨΠυϥΠϯ Alert • SwiftUI alert • UIKit UIAlertController
• ϚςϦΞϧσβΠϯ Dialogs • Flutter AlertDialog • Jetpack Compose Dialog • Android View AlertDialog
ώϡʔϚϯΠϯλʔϑΣʔεΨΠυϥΠϯ
Ξϥʔτ߇͑Ίʹ͏
https://developer.apple.com/jp/design/human-interface-guidelines/alerts Ξϥʔτॏཁͳใͷఏࣔʹ͑Δͱ͍͑ɺͦͷͨͼʹϢʔ βͷૢ࡞͕தஅ͞Ε·͢ɻͲͷΞϥʔτʹඞͣෆՄܽͳใ ༗༻ͳΞΫγϣϯؚ͕·Ε͍ͯΔΑ͏ʹ͠ͳ͍ͱɺϢʔβ͕ ΞϥʔτΛܰࢹ͢ΔΑ͏ʹͳΓ͔Ͷ·ͤΜɻ
ϚςϦΞϧσβΠϯΨΠυϥΠϯ
None
https://m3.material.io/components/dialogs/guidelines#c395b8a7-a125-42f4-9d19-77f535b2c873 ΞϓϦͷ௨ৗͷૢ࡞Λதஅ͢ΔରɺಛఆͷϢ ʔβʔλεΫɺܾఆɺ͘͠ಉҙʹඞཁͱͳΔ ॏཁͳใʹ Dialogs Λ༻͍ͯͩ͘͠͞
https://m3.material.io/components/dialogs/guidelines#c395b8a7-a125-42f4-9d19-77f535b2c873 ·ͨத͘Β͍ͷ༏ઌͷใʹ Dialogs ༻͠ ͳ͍Ͱ͍ͩ͘͞ɻΘΓʹ Snackbar Λͬͯͩ͘ ͍͞ɻফڈͰ͖Δ͠ɺࣗಈతʹඇදࣔʹͰ͖·͢
ώϡʔϚϯΠϯλʔϑΣʔεΨΠυϥΠϯ
https://developer.apple.com/jp/design/human-interface-guidelines/alerts#iOS-iPadOS Ϣʔβ͕ҙਤͨ͠ΞΫγϣϯʹؔ࿈͢Δબࢶ Λఏࣔ͢Δ߹ɺΞϥʔτͰͳ͘ΞΫγ ϣϯγʔτΛ༻͢Δ
https://developer.apple.com/jp/design/human-interface-guidelines/alerts#Best-practices Ωϟογϡ͞ΕͨσʔλϓϨʔεϗϧμͷσʔλ Λදࣔͨ͠ΓɺϢʔβͷૢ࡞Λதஅ͠ͳ͍ܗͰ ʹ͍ͭͯઆ໌͢ΔϥϕϧΛදࣔ͢Δ͜ͱ͕Ͱ͖·͢
۩ମྫ
Airplane • Ωϟογϡ͕͋ΕΩϟογϡ Λදࣔʢ͓ͦΒ͘ͷΩϟο γϡͷ༗ແʣ Apple Weather App
Airplane Apple Music
Airplane Apple Home
Airplane Apple Books
ϚςϦΞϧσβΠϯΨΠυϥΠϯ
None
https://m3.material.io/components/dialogs/accessibility#a253a077-28be-4e66-b89e-a328db8a40dc ॏཁͰͳ͍ใɺΞϓϦͷίϯςϯπͷ ྲྀΕͷதͰଞͷ UI ͬͯఏ͍ࣔͯͩ͘͠͞
https://m3.material.io/components/dialogs/accessibility#a253a077-28be-4e66-b89e-a328db8a40dc μΠΞϩάʹॏཁͰͳ͍ใΛஔ͘͜ͱΛ ආ͚͍ͯͩ͘͞
ίϯςϯπ
؆͔ܿͭ໌֬ʹঢ়گΛઆ໌͢ΔλΠτϧʹ͢Δ
https://developer.apple.com/jp/design/human-interface-guidelines/alerts#Content Ϣʔβʹঢ়گΛૉૣ͘ཧղͯ͠Β͏ඞཁ͕͋ΔͷͰɺͳදݱΛආ͚ɺ࿙Εͳ͘۩ମతʹهड़͠· ͢ɻͰ͖ΔݶΓɺى͖ͨ͜ͱɺى͖ͨঢ়گɺى͖ͨཧ༝ʹ͍ͭͯઆ໌͠·͠ΐ͏ɻʮΤϥʔʯʮΤ ϥʔ329347͕ൃੜ͠·ͨ͠ʯͷΑ͏ͳɺ༗༻ͳใΛୡ͠ͳ͍λΠτϧʹ͠ͳ͍Ͱ͍ͩ͘͞ɻ2 ߦΛ͑ͯંΓฦ͞ΕΔΑ͏ͳ͗͢ΔλΠτϧආ͚·͢ɻλΠτϧ͕શͳจͰ͋Δ߹ɺη ϯςϯεελΠϧͷେจࣈԽʢӳޠͷ߹ʣΛ༻͠ɺదͳจه߸Λ͚·͢ɻஅยతͳจΛλ Πτϧʹ͢Δ߹ɺλΠτϧʹ;͞Θ͍͠දݱʹ͠ɺจه߸͚ͳ͍Α͏ʹ͠·͢ɻ
Θ͔Γʹ͍͘
ຊʹ༗ҙٛͳΤϥʔϝοηʔδΛॻ͘ʹ
“࣮֬ʹΰϛശΛۭʹ͢Δ”Λ ༻͢Δͱɺ“ΰϛശ”ʹ͋Δ ߲͕શʹফڈ͞Ε·͢ɻ શʹফڈͯ͠ΑΖ͍͠Ͱ ͔͢ʁ ؆͔ܿͭ໌֬ʹঢ়گΛઆ໌͢ΔλΠτϧ https://postd.cc/how-to-write-an-error-message/
None
https://m3.material.io/components/dialogs/guidelines#0c ff 8b6b-d4f3-4442-8194-31212f5d1a12 ͜ͷμΠΞϩάͷλΠτϧɺ۩ମతͳ࣭Λ ఏࣔ͠ɺϦΫΤετʹؔΘΔ༰Λ؆ܿʹઆ ໌͠ɺ໌֬ͳΞΫγϣϯΛఏڙ͠·͢
https://m3.material.io/components/dialogs/guidelines#0c ff 8b6b-d4f3-4442-8194-31212f5d1a12 μΠΞϩάͷλΠτϧͰᐆດͳ࣭Λ͠ͳ ͍Ͱ͍ͩ͘͞
͍ͭΞϥʔτΛͬͨΒྑ͍͔ʁ
ΞϓϦͰͷόϥϯεͳͷͰਖ਼ղͳ͍
ΞϓϦͰΞϥʔτΛ૿͢͜ͱʹͳͬͨΒ ଞͷΞϥʔτ͕ඞཁ͔ઈ͑ͣݟ͕͠ඞཁ
ݸʑͷΞϓϦ͕ରԠ͢Δ͚ͩͰෆे
·ͣݸʑͷΞϓϦ͔ΒରԠΛ ෭࣍తޮՌͰϨϏϡʔͷ৺͕Α͘ͳΔ ʢͣʣ
͓ΘΓʹ ڞ௨ݴޠΛ࡞Ζ͏ ώϡʔϚϯΠϯλʔϑΣʔεΨΠυϥΠϯ https://developer.apple.com/jp/design/human-interface-guidelines/ ϚςϦΞϧσβΠϯ https://m3.material.io/
͓ΘΓʹ هࣄհ iOS ʹ͍ͭͯͷ·ͱΊ https://zenn.dev/yumemi_inc/articles/effective-alert ݩωλͷεΫϥοϓ https://zenn.dev/ykws/scraps/1bd34b3f414206