Skip to content

Instantly share code, notes, and snippets.

@mono0926
Last active August 13, 2021 00:44
Show Gist options
  • Save mono0926/d0b8a357aa43c73ee9d7a23901ad42be to your computer and use it in GitHub Desktop.
Save mono0926/d0b8a357aa43c73ee9d7a23901ad42be to your computer and use it in GitHub Desktop.

Flutterのダイアログ取り扱いざっくりメモ

ダイアログの出し方

  • とりあえずshowDialogで済むならそれ利用
    • シンプルに表示したい時にはこれで充分だが、柔軟性に乏しく表示エフェクトなどは固定で、背面タップで閉じられるか切り替えられるだけ
  • showDialogのカスタマイズ性では要件満たせない場合は、showGeneralDialogを利用
    • showDialogはshowGeneralDialogを内部実装で使っている
  • showGeneralDialogはけっこう表現力高いが、もしそれでも不十分な場合は PopupRouteを継承した独自Routeを作ってそれを利用

表示コンテンツ

  • AlertDialog: いわゆるアラート用のダイアログ
  • SimpleDialog: いわゆるアラートではなくもう少しリッチな表示にしつつもMaterial Designベースに組みたい時に利用
  • Dialog: より汎用的なダイアログ(自前でMaterial + αで同等のものが組めるが基本的にはこれ使うのがベター)

また、Material Designに寄り添いたい場合、ダイアログはあまり独自デザインにせず、なるべくこのガイドラインに寄せるようにした方がきれいにまとまって、そのパターンのUIに慣れているユーザーにとっても使いやすいものになる。


この記事・資料なども良い:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment