我使用 Navigator.push
最多 6 个屏幕来访问付款页面。付款后,我想推到“付款成功”页面,然后删除所有以前的屏幕,即使用后退按钮将返回到第一个屏幕。
注意:我已尝试 pushReplacementNamed
,但它不起作用。
最佳答案
我想通了。它是 Navigator.pushAndRemoveUntil
函数。我必须将 PaymentSuccessful
小部件作为 newRoute
传递,并将 "/Home"
路由作为谓词传递
_navPaymentSuccessful(){
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(
builder: (context) => PaymentSuccessful()
),
ModalRoute.withName("/Home")
);
}
https://stackoverflow.com/questions/52689049/
相关文章:
android - 如何在 Flutter 中获取 AppBar 高度
flutter - 在 Flutter 本地干净地覆盖部分主题
android - 如何使用 Flutter 构建增强现实应用程序?
dart - 使用 Flutter/dart 的 NTLM 身份验证
error-handling - 如何在 flutter 中使用 bloc 模式进行错误处理?
android - 是否可以在 flutter 中构建 android 小部件?
ios - 在 Flutter 中打开原生 UIViewController