SimpleDialog を閉じるときに値を返すの?|SimpleDialog|Flutter
API「showDialog<T>」を使って表示した「SimpleDialog」は、API「Navigator.pop」で閉じられるけど、同時に値も返せるよ。そりゃあ、「SimpleDialog」は選択ダイアログなんだから、返せないと困るんだけど。
API「showDialog<T>」の「<T>」は、その戻り値の「型」だ。
使い方
final result = await showDialog<int>(
context: context,
builder: (BuildContext context) {
return SimpleDialog(
title: Text(
'このゴマフアザラシはマッチョですか?'
),
children: <Widget>[
SimpleDialogOption(
onPressed: () => Navigator.pop(context, 0),
child: Text('たぶん'),
),
SimpleDialogOption(
onPressed: () => Navigator.pop(context, 1),
child: Text('そうだ'),
),
SimpleDialogOption(
onPressed: () => Navigator.pop(context, 2),
child: Text('いや、ガリガリだよ'),
),
],
);
},
);
「SimpleDialog」の領域外をタップしたりして「SimpleDialog」が閉じられると、戻り値は「null」で返されるよ。
コメント
コメントを投稿