0

我有一个场景,我在屏幕 A 中有一个弹出窗口。它将从 initstate() 触发。单击弹出窗口内的按钮后,用户可以导航到屏幕 B。如果用户通过单击箭头返回按钮返回屏幕 1,我如何显示弹出窗口?

4

2 回答 2

1

您可以借助以下方式实现.then()https ://api.flutter.dev/flutter/dart-async/Future/then.html

                         Navigator.of(context)
                             .push(CupertinoPageRoute<Screen1>(
                              builder: (context) => Screen2(
                                ))).then((value) {

                             //ShowPopUpMenu() <-- Your PopUpMenu.

                          });
于 2021-09-23T14:00:13.207 回答
0

如果您想要弹出窗口,请在屏幕上添加一个布尔参数:

class PopScreen extends StatefulWidget {
  PopScreen (this.displayPopup);
  final bool displayPopup;
  @override
  _PopScreenState createState() => _PopScreenState();
}

class _PopScreenState extends State<PopScreen> {
  @override
  void initState() {
    super.initState();
    if(widget.displayPopup){
      // display your popup here
    }
  }
}

调用导航器:

Navigator.pushNamed(context, '/yourscreen', arguments: true);
于 2021-09-23T14:00:50.423 回答