【Flutter 2.2.3】SafeArea対応のシンプルなアプリ画面の作成(iOS向け)

SafeAreaシンプルなアプリ画面作成のアイキャッチ

はじめに

今回はFlutterでiPhone12などのiPhoneX系のSafeAreaを考慮した
アプリの雛形(テンプレート)となる画面を作成してみたいと思います。

といっても、Layoutを入れ子にしていくだけなので、iOS開発のようにNavigationControllerがRootとなるようにViewControllerを設定し直したり、StoryBoardでAutoLayoutを設定したりしなくても以下のような画面を作成することができます※実機で撮影したものです

※ NavigationBarのような上側の領域と、下部のSafeArea部分が確保されているような画面

StatefulWidgetについて

StatelessWidgetとStatefulWidgetについて、Flutterではアプリ内で利用規約を表示するだけの画面などユーザの操作がない画面ではStatelessWidgetを使い、ユーザがボタンをタップするなど動的な操作が発生する画面ではStatefulWidgetを利用するようです。

名前 説明
StatelessWidget ユーザの操作がない静的な画面で利用
StatefulWidget ユーザの操作がある動的な画面で利用

StatelessWidgetのテンプレート

StatefulWidgetのテンプレート

レイアウトのソースコード

レイアウトは以下の入れ子構造になっています。

フォントの大きさなどは、なるべくiOSに近いものを選んでみました。

AppBarにボタンを設置する(おまけ)

AppBarに上の画像のような「Done」ボタンを試しに配置してみます。

AppBarに以下actions:を追加します

さいごに

これでiPhoneやAndroid向けのスマートフォン向けアプリを作るにあたっての雛形的な画面を作ることができました!

Flutterのレイアウトについて、まだまだお勉強が必要ですが、これからも頑張っていきたいと思います!

見て頂いてありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です