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
120
画面遷移 〜iOSとAndroid〜
社内LTで発表した
みっちゃん
August 23, 2024
Tweet
Share
More Decks by みっちゃん
See All by みっちゃん
2024年にチャレンジしたことを振り返るぞ
mitchan
0
200
DroidKaigi初めて登壇したレポ
mitchan
1
140
実践!難読化ガイド
mitchan
0
2.3k
「実践!難読化ガイド」事前予告編
mitchan
0
240
パソコン音痴な私がモバイル開発界隈でぬくぬく成長している理由
mitchan
0
410
ドキュメントから adbコマンドの仕組みを読み解く
mitchan
1
270
2024年は難読化と仲良くなりたい
mitchan
0
350
STORES二年生が得た新しい視点
mitchan
0
270
TabLayoutの「選択されていないインジケーター」にも色を付けるには
mitchan
0
82
Other Decks in Programming
See All in Programming
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
540
もっと大きなデータを送りませんか? エラーがゴロゴロ出るようなデータです
sublimer
0
170
爆速スッキリ! Rspack 移行の成果と道のり - Muddy Web #11
dora1998
0
130
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
6
2.9k
保守性を高める AWS CDK のセオリー・ベストプラクティス
yamanashi_ren01
5
730
NestJSのコードからOpenAPIを自動生成する際の最適解を探す
astatsuya
0
100
小さく段階的リリースすることで深夜メンテを回避する
mkmk884
2
100
CIBMTR振り返り+敗北から学ぶコンペの取り組み方反省
takanao
1
490
読もう! Android build ドキュメント
andpad
1
190
PromptyによるAI開発入門
ymd65536
1
330
2025/3/18 サービスの成長で生じる幅広いパフォーマンスの問題を、 AIで手軽に解決する
shirahama_x
0
130
GDG Super.init(version=6) - From Where to Wear : 모바일 개발자가 워치에서 발견한 인사이트
haeti2
0
520
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Typedesign – Prime Four
hannesfritz
41
2.6k
Navigating Team Friction
lara
183
15k
Designing Experiences People Love
moore
140
23k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
8
690
Practical Orchestrator
shlominoach
186
10k
RailsConf 2023
tenderlove
29
1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
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?