[Flutter]ダイアログ(AlertDialog)を自動的に表示させる方法

このページには広告が含まれる場合があります。

 

Flutterでダイアログ(AlertDialog)は、AlertDialogのインスタンスを直接呼び出すのではなくて、通常は「showDialog」というメソッドを使って、builder属性内でAlertDialogのインスタンスを呼び出します。

しかし、showDialogメソッドは、ボタンを押した時(onPressed)など、ユーザー側から表示のアクションを起こしてもらう必要があるため、ダイアログを自動的に表示させたい場合は、仕方がないので、AlertDialogのインスタンスを直接呼び出すとします。

しかし、このやり方だとAlertDialogを直接呼び出した場合は、ダイアログ表示元の画面もろとも閉じてしまいます。

なぜなら、ダイアログを閉じる際には通常のWidgetを閉じる際に使うNavigator.popメソッドを使いますが、AlertDialogのインスタンスを直接呼び出す方法を使う方法の場合は、表示元の画面にAlertDialogが載っていない(pushされていない)からです。

ですので、ダイアログを自動的に表示させたい場合は、以下のようにbuildメソッド内でFuture.delayedを使って、一定時間後にshowDialogを起動させてやる方法を使うとうまくいきます。

(詳しくは、以下の動画で解説していますので、よろしければご覧下さい)

こんな記事も読まれています

今すぐ無料お試しキットを受け取る

はじめての方へ


みんプロ式プログラミング講座体系・ラインナップ
みんプロ式プログラミング講座受講の流れ(割引特典利用方法)
サイトマップ(みんプロHPコンテンツ一覧)
運営会社概要

みんプロ作成アプリ





TOP