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
画面遷移 〜iOSとAndroid〜
Search
みっちゃん
August 23, 2024
Programming
0
220
画面遷移 〜iOSとAndroid〜
社内LTで発表した
みっちゃん
August 23, 2024
Tweet
Share
More Decks by みっちゃん
See All by みっちゃん
2024年にチャレンジしたことを振り返るぞ
mitchan
0
240
DroidKaigi初めて登壇したレポ
mitchan
1
170
実践!難読化ガイド
mitchan
0
2.9k
「実践!難読化ガイド」事前予告編
mitchan
0
280
パソコン音痴な私がモバイル開発界隈でぬくぬく成長している理由
mitchan
0
480
ドキュメントから adbコマンドの仕組みを読み解く
mitchan
1
320
2024年は難読化と仲良くなりたい
mitchan
0
370
STORES二年生が得た新しい視点
mitchan
0
300
TabLayoutの「選択されていないインジケーター」にも色を付けるには
mitchan
0
94
Other Decks in Programming
See All in Programming
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
0
220
旅行プランAIエージェント開発の裏側
ippo012
1
550
速いWebフレームワークを作る
yusukebe
3
650
tool ディレクティブを導入してみた感想
sgash708
1
160
AIエージェント開発、DevOps and LLMOps
ymd65536
1
370
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
270
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
1
220
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
360
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
150
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
po3rin
8
1k
あのころの iPod を どうにか再生させたい
orumin
2
2.6k
Processing Gem ベースの、2D レトロゲームエンジンの開発
tokujiros
2
120
Featured
See All Featured
Making Projects Easy
brettharned
117
6.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Unsuck your backbone
ammeep
671
58k
YesSQL, Process and Tooling at Scale
rocio
173
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
A designer walks into a library…
pauljervisheath
207
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Why Our Code Smells
bkeepers
PRO
339
57k
Fireside Chat
paigeccino
39
3.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Transcript
画面遷移 〜iOSとAndroid〜 登壇者:STORES 決済 Androidチーム みっちゃん 1
自己紹介 名前:みっちゃん 所属:STORES 決済 Androidチーム (3年目) ナワバリ:おおさか DroidKaigiのスタッフをしています! アイコンは、ドロイドくん柄のお布団ですよ!♡ →→→
ドロイドくんを吸い込んだバケモノではありません! Twitter: @mimimi_engineer 2
今日はiOSエンジニアもAndroidエンジニアもいますね
私は平和主義者です せっかくなので、、、 AndroidエンジニアとiOSエンジニアが歩み寄れる内容にしたい!ハート そうだ、画面遷移だ。(?) 4
iOSの画面遷移って、なんかいっぱいある。 Push遷移 Modal遷移 Tab遷移
プッシュ遷移 < 設定 目的 A 目的 B 目的 C •
階層型ナビゲーション • 画面ごとにひとつの選択 を行い、次のステップへ 進む • 前のステップへ戻るボタ ンは取り消しの意味を持 たない(その画面での変 更は保存されるべき)
タブ遷移 • 並列型ナビゲーション • 複数の動線を保持しま す。保持する画面の目的 はどれも同じ 同じ目的
モーダル遷移 • 分岐型ナビゲーション • 現在のメインタスクとは 外れた、サブタスクを取 り扱う一時的な画面が Modalで表示 サブタスク A’
メインタスク A
Androidの画面遷移 ActivityがBack stackというところにpushされたりpopされたりしてる 9 ログイン Back stack LoginActivity LoginActivity ホーム画面
だよ HomeActivity 戻る push! HomeActivity Back stack pop! HomeActivity
iOSの画面遷移はAndroidと同様に Back stackにpush・popじゃないの? Push遷移とかModal遷移は見た目が違うだけで 内部的な画面遷移の仕組みは同じなの??
iOSの画面遷移の内部的な仕組み TreeBasedとStackBasedがある
iOSは遷移の種類によって内部の仕組みが違うようだ • モーダル遷移はTreeBasedを使うぽい(多分) • プッシュ遷移はStackBasedを使うっぽい(多分) • Androidの画面遷移に近いのはStackBasedのようだ(知らんけど) (ウ゛、ムズい・・正直なにもわからない・・・・)
結論 iOSでは画面遷移の種類によって内部的な仕組みも違う という意味で、それぞれの遷移の種類を区別しているように思いました。 一方Androidは基本Back stackにActivityを積んだり出したりする仕組みだけで 画面遷移しているので、iOSほど遷移の種類を特別に区別しているわけでは ないのかなと思いました。
おわり
参考資料 • 🔗iOSにおける3つの画面遷移を知る • 🔗タスクとバックスタックについて学ぶ • 🔗What is navigation?