android - 未放置在第一个 Activity 中时,Flutter Navigation push Replacement 不起作用

标签 android dart flutter

我有几个页面。
1. 起始页
2.第2页
3.第3页
4. 主菜单<​​br/>

从 1 -> 2. 和 2 -> 3. 我用它来导航:

Navigator.of(context).push(new MaterialPageRoute<MyPage>(
                    builder: (BuildContext context) {
                      return new MyPage();
                    },
                  ));

对于 3 -> 4。我想使用它(Push Replacement,不会返回),但它不起作用并且像普通 Push 一样工作:

Navigator
        .of(context)
        .pushReplacement(new MaterialPageRoute(builder: (BuildContext context) {
      return new MainMenuPage();
    }));

令人困惑。

最佳答案

我遇到了同样的问题,我猜这是因为我的屏幕 #3 来自一个对话框,而我之前没有处理它。所以我所做的是:

Navigator.of(context).popUntil((route) => route.isFirst);

然后

Navigator.pushReplacement(context, MaterialPageRoute(builder: (BuildContext context) => NewPage()));

关于android - 未放置在第一个 Activity 中时,Flutter Navigation push Replacement 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51484032/

相关文章:

dart - 导入并使用 Polymer-Dart 1.0.0 候选发布版

android - 如何使用kotlin在android应用程序中设置错误消息的时间延迟

android - 像 facebook , Android 一样自动播放视频

javascript - getScript 的 dart 等价物是什么

class - Dart flutter : The default value of an optional parameter must be constant when setting a default value to class constructor

debugging - Flutter - 如何获取错误代码行 : "Another exception was thrown"

flutter - 如何在 flutter 中修复条纹支付

android - 谷歌地图 v2 缩放到特定标记

安卓。异常处理

android - 如何使用外部视频播放器启动视频网址?