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
95
画面遷移 〜iOSとAndroid〜
社内LTで発表した
みっちゃん
August 23, 2024
Tweet
Share
More Decks by みっちゃん
See All by みっちゃん
2024年にチャレンジしたことを振り返るぞ
mitchan
0
190
DroidKaigi初めて登壇したレポ
mitchan
1
130
実践!難読化ガイド
mitchan
0
2k
「実践!難読化ガイド」事前予告編
mitchan
0
220
パソコン音痴な私がモバイル開発界隈でぬくぬく成長している理由
mitchan
0
380
ドキュメントから adbコマンドの仕組みを読み解く
mitchan
1
250
2024年は難読化と仲良くなりたい
mitchan
0
340
STORES二年生が得た新しい視点
mitchan
0
260
TabLayoutの「選択されていないインジケーター」にも色を付けるには
mitchan
0
77
Other Decks in Programming
See All in Programming
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
3
630
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
450
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
190
Flatt Security XSS Challenge 解答・解説
flatt_security
0
1.1k
Package Traits
ikesyo
2
230
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2.1k
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
28
6.1k
HTML/CSS超絶浅い説明
yuki0329
0
210
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
7
1.5k
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
140
functionalなアプローチで動的要素を排除する
ryopeko
1
920
Amazon Nova Reelの可能性
hideg
0
250
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
380
Being A Developer After 40
akosma
89
590k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
We Have a Design System, Now What?
morganepeng
51
7.4k
Navigating Team Friction
lara
183
15k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
GraphQLとの向き合い方2022年版
quramy
44
13k
Optimizing for Happiness
mojombo
376
70k
Speed Design
sergeychernyshev
25
760
Adopting Sorbet at Scale
ufuk
74
9.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?