<

レスポンシブで適応性のあるアプリの作成

Flutter の主な目標の 1 つは、フレームワークを作成することです。 単一のコードベースからアプリを開発できるようになります どのプラットフォームでも見た目も使い心地も優れています。

これは、アプリが次の画面に表示される可能性があることを意味します。 時計から折りたたみ式まで、さまざまなサイズ 2 つの画面を備えた携帯電話を高解像度モニターに接続します。

この概念を説明する 2 つの用語 シナリオは適応的な応答性の高い。理想的には、 あなたのアプリはこうであってほしいと思うでしょう両方でも何、 まさに、これはどういう意味ですか? これらの用語は似ていますが、同じではありません。

アダプティブ アプリとレスポンシブ アプリの違い

アダプティブ応答性の高い別々のものとして見ることができる アプリの寸法: アダプティブなアプリを作成できます それが応答しない、またはその逆です。そしてもちろん、 アプリは両方であることも、どちらでもないこともあります。

レスポンシブ
通常、応答性の高いアプリのレイアウトが完成しました 利用可能な画面サイズに合わせて調整されています。多くの場合これ これは、(たとえば) UI を再レイアウトすることを意味します。 ユーザーがウィンドウのサイズを変更するか、デバイスの オリエンテーション。これは特に次の場合に必要です。 同じアプリをさまざまなデバイスで実行できるため、 時計、携帯電話、タブレットからラップトップ、または デスクトップコンピューター。
アダプティブ
適応するさまざまな種類のデバイスで実行するアプリ、 モバイルやデスクトップなど、対応が必要 マウスとキーボード入力だけでなく、 タッチ入力。違うものがあるという意味でもあります アプリの視覚的な密度についての期待、 コンポーネントの選択の仕組み (カスケード メニューと下部シートなど)、 プラットフォーム固有の機能を使用する(たとえば、 トップレベルウィンドウ) など。

レスポンシブな Flutter アプリの作成

Flutter を使用すると、自己適応するアプリを作成できます デバイスの画面サイズと向きに合わせて調整します。

Flutter を作成するには 2 つの基本的なアプローチがあります レスポンシブデザインのアプリ:

使用LayoutBuilderクラス
そのことからbuilderプロパティを取得すると、ed717bbd-0169-4ef2-993d​​-ee7510df9dbf物体。 制約のプロパティを調べて何を行うかを決定します 画面。たとえば、あなたの場合、maxWidthより大きい 幅ブレークポイントは、Scaffoldオブジェクト 左側にリストがある行。もっと狭い場合は、 返すScaffoldそれを含む引き出しを持つオブジェクト リスト。に基づいてディスプレイを調整することもできます。 デバイスの高さ、アスペクト比、またはその他のプロパティ。 制約が変更されたとき (たとえば、 ユーザーが携帯電話を回転させるか、アプリをタイル UI に配置します Nougat の場合)、ビルド関数が実行されます。
使用MediaQuery.of()ビルド関数内のメソッド
これにより、現在のアプリのサイズ、方向などがわかります。 これは、以下に基づいて決定を下す場合に便利です。 特定のサイズだけではなく、完全なコンテキスト ウィジェット。繰り返しますが、これを使用すると、ビルド関数が自動的に実行されます。 ユーザーが何らかの方法でアプリのサイズを変更した場合に実行されます。

レスポンシブ UI を作成するためのその他の便利なウィジェットとクラス:

  • AspectRatio
  • CustomSingleChildLayout
  • CustomMultiChildLayout
  • FittedBox
  • FractionallySizedBox
  • LayoutBuilder
  • MediaQuery
  • MediaQueryData
  • OrientationBuilder

その他のリソース

詳細については、ここにいくつかのリソースがあります。 Flutter コミュニティからの貢献を含む:

  • 複数の画面サイズと方向に対応した開発 flutterデブン・ジョシ著
  • Flutter でレスポンシブ UI を構築するラウフ・ラヒシュ著
  • クロスプラットフォームの Flutter ランディング ページをレスポンシブにするプリヤンカー・ティアーギ著
  • さまざまな画面に応じて Flutter アプリをレスポンシブにする方法 サイズ?、StackOverflow に関する質問

アダプティブ Flutter アプリの作成

アダプティブ Flutter アプリの作成について詳しくは、こちらをご覧ください。アダプティブ アプリの構築、gskinnerチームによって書かれました。

次のエピソードもチェックしてください 退屈なショーの:

アダプティブレイアウト

アダプティブ レイアウト、パート 2

アダプティブ アプリの優れた例としては、 Flutter Folio をチェックしてください。スクラップブッキング アプリです。 gskinner および Flutter チームと協力して:

のフォリオのソースコードGitHub でも入手できます。 詳細については、グスキナーのブログ。

その他のリソース

プラットフォーム適応型アプリの作成について詳しく学ぶことができます 次のリソースにあります。

  • プラットフォーム固有の動作と適応, このサイトのページ。
  • 真に適応性のあるユーザー インターフェイスを設計するブログ投稿とビデオ アロイス・デニエル著、今年の FlutterViking カンファレンスで発表。
  • のFlutterギャラリーアプリ(リポジトリ) として書かれています。 アダプティブアプリ。