Flutter

Flutterで縦や横に画面の向きを固定する

アプリを作成するにあたって、アプリ自体の向きを固定したくなりました。
実際に私がリリースしている「MovieBookmark」では初期リリースにおいては画面を縦画面に固定しています。

最初から縦と横の両方の向きに対応しても良いのですが、レイアウトをそれぞれで設定したりするのが大変で、まず初期リリースを出す方が大事かな?ということで、縦画面に固定するだけにしました。
具体的な実装方法ですが、以下のコードになります。

    SystemChrome.setPreferredOrientations([
      DeviceOrientation.portraitUp,
      DeviceOrientation.landscapeLeft,
      DeviceOrientation.landscapeRight,
      DeviceOrientation.portraitDown
    ]);

上記のコードをbuild内や、Flutterのmain()内に記述すればOKです。

  • DeviceOrientation.portraitUp
  • DeviceOrientation.landscapeLeft
  • DeviceOrientation.landscapeRight
  • DeviceOrientation.portraitDown

上記4つの中で、有効にしたいものだけを記述するとその向きだけに固定できるようになっています。
なので、縦画面のみにしたい場合は以下となります。

    SystemChrome.setPreferredOrientations([
      DeviceOrientation.portraitUp,
    ]);

ということで、Flutterでアプリの画面を縦横固定したいときに使うコードについて書いてみました。
ご自身でFlutterでアプリ開発を行っているときの参考になればと思います!

-Flutter
-