Flutter:从后台堆栈中只删除一页
Posted
技术标签:
【中文标题】Flutter:从后台堆栈中只删除一页【英文标题】:Flutter : delete just one page from back stack 【发布时间】:2021-01-14 02:47:27 【问题描述】:所以,我知道这段代码将删除除新的 /login 之外的所有路由。:
Navigator.of(context)
.pushNamedAndRemoveUntil('/login', (Route<dynamic> route) => false);
知道我想只从后台堆栈中删除一页..
示例:要创建一个新组,我会显示一个“创建新组”页面,其中包含一些信息(输入页面名称,输入页面类别...)。提交后,我们传递给新组的详细信息.. 但是当我单击返回按钮时,我不想返回“创建新组”页面。
【问题讨论】:
【参考方案1】:pushReplacementNamed
将用新添加的导航器屏幕替换最新的
姓名:
Navigator.of(context).pushReplacementNamed('/login');
无名:
Navigator.pushReplacementNamed(context, '/login')
【讨论】:
【参考方案2】:Navigator.of(context).pop()
Documentation
【讨论】:
是的,我现在就这样做。但是,当然,我必须在导航到新页面之前执行 Navigator.of(context).pop() 。这对用户来说真的不是很好,因为他会看到“毫秒”页面关闭和其他打开..我认为这不是最好的方式.. 你可以使用 pushAndReplace以上是关于Flutter:从后台堆栈中只删除一页的主要内容,如果未能解决你的问题,请参考以下文章