gpt4 book ai didi

flutter - 如何在 Flutter 中离开屏幕前显示确认对话框

转载 作者:行者123 更新时间:2023-12-03 15:21:24 28 4
gpt4 key购买 nike

我想在处理或离开屏幕之前或最近显示警告 SnackBar 之前显示警报对话框,我该怎么做?

我知道如何显示对话框和 SnackBar,但我不知道我在哪里执行此操作,或者我何时尝试在处理生命钩子(Hook)时执行此操作,但它会出错。由于上下文在显示对话框之前被处理。

最佳答案

您可以使用 WillPopScope小部件:

  @override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () async {
final value = await showDialog<bool>(
context: context,
builder: (context) {
return AlertDialog(
content: Text('Are you sure you want to exit?'),
actions: <Widget>[
FlatButton(
child: Text('No'),
onPressed: () {
Navigator.of(context).pop(false);
},
),
FlatButton(
child: Text('Yes, exit'),
onPressed: () {
Navigator.of(context).pop(true);
},
),
],
);
}
);

return value == true;
},
child: Scaffold(
appBar: AppBar(),
body: SafeArea(
child: Container()
),
),
);
}

关于flutter - 如何在 Flutter 中离开屏幕前显示确认对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59123262/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com