我有一个“警报”对话框菜单,其中包含一个包含某些按钮的网格视图,我需要将“警报”对话框显示在页面底部而不是中间。我的问题是怎么做。
compose
答案 0 :(得分:1)
也许您不应该使用警报对话框,而是使用自己的窗口小部件显示对话框。
请注意,如果您根本需要对话,我会有些困惑。如果您不需要附加对话框,则可以使用一些方法。
如果您只需要一个小部件:
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"),
);
}