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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Sato Takeshi
February 14, 2018
Programming
6
2.6k
もう迷わない!モーダルとプッシュどっちがいいの?
第2回 iOS UI実装勉強会で発表した内容です。
https://connpass.com/event/78347/
Sato Takeshi
February 14, 2018
Tweet
Share
More Decks by Sato Takeshi
See All by Sato Takeshi
まさかのバグ!SwiftUIプレビューでハマった国際化対応の落とし穴
satotakeshi
0
390
Swift愛好会 の 思い出
satotakeshi
0
120
Xcode 15, Swift 5.9で変わる開発体験
satotakeshi
3
3.1k
Meet passkeys
satotakeshi
2
410
What's new in Vision
satotakeshi
0
2.3k
Swift Concurrency入門
satotakeshi
11
5.5k
複数端末のつらさを乗り越えてiOS UITestを実行
satotakeshi
1
460
Xcodegenを個人アプリに導入
satotakeshi
3
890
SwiftUIで作る開閉式メニュー
satotakeshi
2
3.2k
Other Decks in Programming
See All in Programming
AHC061解説
shun_pi
0
350
Windows on Ryzen and I
seosoft
0
220
CSC307 Lecture 13
javiergs
PRO
0
310
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
170
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
520
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
230
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
250
Railsの気持ちを考えながらコントローラとビューを整頓する/tidying-rails-controllers-and-views-as-rails-think
moro
4
380
SourceGeneratorのマーカー属性問題について
htkym
0
180
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
520
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
680
CDIの誤解しがちな仕様とその対処TIPS
futokiyo
0
190
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
260
WCS-LA-2024
lcolladotor
0
480
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
200
Thoughts on Productivity
jonyablonski
75
5.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Ethics towards AI in product and experience design
skipperchong
2
220
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
400
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
250
Six Lessons from altMBA
skipperchong
29
4.2k
Transcript
͏໎Θͳ͍ʂ ϞʔμϧͱϓογϡͲͬ ͕͍͍ͪͷʁ ୈ2ճ iOS UI࣮ษڧձ 20182݄14 ࠤ౻߶࢜ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 1
Who am I ࠤ౻߶࢜ (@hatakenokakashi) MAMORIOגࣜձࣾͰiOSΤϯδχΞ͠ ͍ͯ·͢ɻ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 2
ࣗͰΞϓϦΛ࡞ͬͨ͜ͱ͋Δਓ? ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 3
! ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 4
σβΠϯࣗͰ࡞ΔͷେมͰ͢Ͷ ! ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 5
ը໘σβΠϯେࣄ͚ͩͲը໘ભҠͷ ઃܭେࣄͳUIͷ̍ͭʂ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 6
ࠓը໘ભҠͷΛ͍ͤͯͩ͘͞͞ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 7
෩ਫͷ͍ΞϓϦΛ࡞͍ͬͯͨɻ Ϣʔβʔʹૢ࡞Λ͍ͤͨ͞ը໘Tab barͷҰ෦Ͱྑ͍ͷ͔ʁ modalͰશը໘දࣔʹ͢Δ͖͔ʁ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 8
Tab bar͏ͱը໘ྖҬ͕ڱ͘ͳΔ͚Ͳ͍͍ͷʁ શ෦ͬͨ΄͏͕ྑ͘ͳ͍ʁ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 9
!!!!!!!! ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 10
Tab barͬͯΔଞͷΞ ϓϦΛݟͯΈΔ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 11
͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 12
͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 13
͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 14
! Ұཡը໘Tab barͰΈࠐΈɻৄࡉը໘ϓογϡભҠɻ ߘܥϞʔμϧભҠͰશը໘දࣔɻ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 15
Human Interface Guidelines iOS • Modality • Navigation ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 16
Modality Ϟʔμϧͷ༻࠷খݶʹɻҰൠతʹਓʑΞϓϦΛγʔϜϨ εʹ͏͜ͱΛΈ·͢ɻϞʔμϧΛ͏໘Α͘Α͘ߟ͑ ·͠ΐ͏ɻ୭͔ͷҙΛҾ͖ग़͢ॏཁͳࣄ͕͋Δ߹ɺ͋Δ λεΫ͕ऴΘΔ͔ഁغ͞Εͳ͍ͱΞϓϦ͕͏͜ͱ͕Ͱ͖ͳ͍ ঢ়ଶɺ·ͨॏཁͳσʔλΛอଘ͢Δ߹ͳͲ͕·͍͠Ͱ ͢ɻ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 17
Modality ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 18
Navigation ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 19
Hierarchical Navigation ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 20
Flat Navigation ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 21
Content-Driven or Experience- Driven Navigation ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 22
ݴ͍ํΛม͑Δͱ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 23
ͦͷը໘ΛϢʔβʔ͕ • ʮݟΔʯ͕ओମͷը໘ͳΒφϏήʔγϣϯʹΈࠐΉɻ • ϓογϡભҠ • ʮ͢Δʯ͕ओମͷը໘ͳΒશ໘දࣔ͢Δɻ • ϞʔμϧભҠ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ
24
͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 25
͏ҰଞͷΞϓϦΛ֬ ೝ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 26
Twitter ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 27
Evernote ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 28
ࣗͷΞϓϦͰ Ϣʔβʔʹը໘ૢ࡞ͯ͠ཉ͍͠ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 29
͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 30
class TopTabBarController: UITabBarController, UITabBarControllerDelegate { func tabBarController(_ tabBarController: UITabBarController, didSelect
viewController: UIViewController) { let tagNum = viewController.tabBarItem.tag switch tagNum { case 2: let second = FlyingStarViewController.instanceate() self.present(second, animated: true, completion: nil) default: break } } } ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 31
·ͱΊ • ʮݟΔʯ͕ओମͷը໘ͳΒφϏήʔγϣϯʹΈࠐΉɻ • ϓογϡભҠ • ʮ͢Δʯ͕ओମͷը໘ͳΒશ໘දࣔ͢Δɻ • ϞʔμϧભҠ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ
32
એ ͏໎Θͳ͍ʂϞʔμϧͱϓογϡͲ͕͍͍ͬͪͷʁ 33