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
340
アラートを効果的に扱おう
KAWASHIMA Yoshiyuki
February 14, 2024
Tweet
Share
More Decks by KAWASHIMA Yoshiyuki
See All by KAWASHIMA Yoshiyuki
SwiftUI Drag & Drop で困った話
ykws
0
28
GitHub PR Milestone Check を使ってみた
ykws
0
22
Kotlin 2.0.20 から標準ライブラリで UUID が使えるようになりました
ykws
1
220
コードの作者がいるうちに聞こう
ykws
2
490
visionOS に備える
ykws
0
210
モバイルアプリの操作方法を疑ってみる
ykws
0
1.5k
Other Decks in Programming
See All in Programming
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.1k
もう僕は OpenAPI を書きたくない
sgash708
5
1.8k
GitHub Actions × RAGでコードレビューの検証の結果
sho_000
0
280
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
200
負債になりにくいCSSをデザイナとつくるには?
fsubal
10
2.5k
ARA Ansible for the teams
kksat
0
160
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
580
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.2k
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
380
昭和の職場からアジャイルの世界へ
kumagoro95
1
410
『品質』という言葉が嫌いな理由
korimu
0
180
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
4 Signs Your Business is Dying
shpigford
182
22k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
GitHub's CSS Performance
jonrohan
1030
460k
A Philosophy of Restraint
colly
203
16k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Building Adaptive Systems
keathley
40
2.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
Code Review Best Practice
trishagee
67
18k
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