Xamarin.Formsの画面遷移
前回、アプリのライフサイクルについて整理しました。
今回は画面のライフサイクルについて整理しようと思いましたが…。
その前に画面遷移についてさらっと整理をしておきたくなりました。
Xamarin.Formsの画面遷移のパターン
公式のDevelopersガイドによれば、 Xamarin.Formsで用意された画面遷移のパターンは下記の通りです。
- Hierarchical Navigation
- TabbedPage
- CarouselPage
- MasterDetailPage
- Modal Pages
- Displaying Pop-Ups
(参考)
https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/navigation/
iOSエンジニア的には捉えやすい分類になっていますね☆
画面遷移は超重要!
実戦の開発では、画面遷移は非常に重要です。
開発を進めるにあたっての要件定義や設計の進め方は色々あると思います。
その中で個人的にもっとも重視しているのは、
「早いうちに画面を洗い出し、画面遷移を決めにかかる」
ということです。
それがそのアプリの骨組みになります。
場合によっては、
その骨組みを成り立たせるために、
- 特殊な画面遷移制御が必要なのか
- 必要だとすればどう実現すればいいのか
という検討が必要です。
画面遷移そのものの検討にも、
特殊な場合の検討にも、
ベーシックな画面遷移の理解が必須だと思っています。
特に理解しておくべきと思う画面遷移
下記の3つは特に理解しておくべきと思います。
- Hierarchical Navigation
- Modal Pages
- TabbedPage
どれも頻出の画面遷移です。
いろんなアプリがあるので一概に言えませんが…。
この3つの適切な組み合わせで対応できるケースは少なくないと思います。
加えて。
これらの画面遷移パターンに絡めて、画面のライフサイクルを押さえておくことも重要だと思います。
ということで。
画面のライフサイクルについては、画面遷移パターンに絡めて整理して記事にしていこうと思います!
「基礎の基礎が怖いってことを、今日何度も言っておきます」
というようなセリフを何かのCMで聞いたことがあります。
スマホアプリ開発において、
ライフサイクルや画面遷移は基礎の基礎ではないかなぁと思います。
本番の開発でも、ここの理解・認識・検討を誤ると大変なことになります。
だから、分かってるつもりだけど、敢えて整理をして覚書をしておこうと思ったりもするわけです。