Возможно, вам не следует использовать диалоговое окно с предупреждением, а вместо этого показывать диалоговое окно со своим собственным виджетом.
Обратите внимание, что я немного озадачен, если вам вообще нужен диалог. Если вам не нужен прикрепленный диалог, можно надеяться, что он поможет.
Если вам нужен только виджет:
Widget bottomGridTiles(BuildContext context) {
return Column(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
GridView.count(
shrinkWrap: true, // Important
crossAxisCount: 4,
children: List<Widget>.generate(8, (index) {
return GridTile(
child: Card(
color: Colors.blue.shade200,
child: Center(
child: Text('$index'),
)));
}))
],
);
}
Если вам нужен диалог с виджетом:
void _buildDialog(BuildContext context) {
showDialog(
context: context,
builder: (context) {
return bottomGridTiles(context);
});
}
Виджет, открывающий диалоговое окно:
Widget openDialogButton(BuildContext context) {
return RaisedButton(
onPressed: () => _buildDialog,
child: Text("Open Dialog"),
);
}