解散Cupertino对话行动Flutter

Cha*_*air 4 ios android-alertdialog dart flutter

在使用解释的方法解雇呈现的Cupertino警报对话动作时,我的整个屏幕都会弹出并且警报对话保留在屏幕上.这是我的代码.

if (deviceList.isEmpty){

      var alert = new CupertinoAlertDialog(
        title: new Text("Alert"),
        content: new Text("There was an error signing in. Please try again."),
        actions: <Widget>[
          new CupertinoDialogAction(
              child: const Text('Discard'),
              isDestructiveAction: true,
              onPressed: () { Navigator.pop(context, 'Discard'); }
          ),
          new CupertinoDialogAction(
              child: const Text('Cancel'),
              isDefaultAction: true,
              onPressed: () { Navigator.pop(context, 'Cancel'); }
          ),
        ],
      );
      showDialog(context: context, child: alert);
    }
Run Code Online (Sandbox Code Playgroud)

我在做什么有什么不对吗?我找不到任何其他解决方案来解雇警报对话.请帮忙.

Ser*_* B. 8

在这种情况下,您需要指定rootNavigatorto of():

Navigator.of(context, rootNavigator: true).pop("Discard");

检查文档中提出的实现