flutter - Flutter:将导航功能与没有命名路线的MaterialPageRoute一起用于命名路线

标签 flutter dart

因此,我已经看到许多使用命名路线的导航功能,例如popAndPushNamed,popUntil,pushNamedAndRemoveUntil,pushReplacementNamed。我想知道如何在MaterialPageRoute中使用这些功能,而我没有命名路由。
例如:
我有一个页面
屏幕1
屏幕2
屏幕3
屏幕4
所以我想从屏幕4弹出直到屏幕2不使用名称。
我读过一些帖子,在其中我可以在推送时命名这些路由,但是我有问题,因为我必须传递参数,因此我只想使用不命名路由的功能。我是一个学习者,所以请放轻松。
Navigator.of(context).popUntil(ModalRoute.withName("/Page1"));
基本上我想在不使用命名路由的情况下为命名路由执行以上功能和其他功能。谢谢。

最佳答案

在您的情况下,您需要从屏幕4->转到屏幕3->并停留在屏幕2。因此,这意味着您需要2次弹出,因此请按照以下步骤操作:

count = 0;
Navigator.popUntil(context, (route) {
return count++ == 2;
});

关于flutter - Flutter:将导航功能与没有命名路线的MaterialPageRoute一起用于命名路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62209230/

相关文章:

android - 存储库中的 Flutter 文件夹

flutter - 在初始化器中只能访问静态成员

generics - 从通用约束 Dart 调用静态方法

flutter - 在Flutter中创建类似于github语言栏的栏

api - 执行 POST 请求时出现 CERTIFICATE_VERIFY_FAILED 错误?

firebase - [Firebase/Core][I-COR000005] 尚未配置任何应用

flutter - 从Flutter中的列表中提取数字并用逗号分隔

dart - 使用某些纸张/核心元素时dartium中的警告

dart - 即使类型相同,也无法分配Dart函数参数

flutter - flutter 覆盖可见性标志