【问题标题】:How to close the specified page in flutter如何在flutter中关闭指定页面
【发布时间】:2021-12-29 08:02:45
【问题描述】:

打开app,页面顺序是A->B->C,我想在C页面上关闭B页面,页面顺序是A->C。 据我所知Navigator.removeRoute(context, routerC)可以用,但是不知道routerC怎么获取。

你能告诉我怎么做吗?谢谢

【问题讨论】:

标签: flutter router navigator


【解决方案1】:

路由列表类

  class AppRoutes {
  static String get A=> "/a";
  static String get B=> "/b";
  static String get C=> "/c";
  static String get K=> "/k";

如下编写删除路由函数

clearRouteAndOpen(BuildContext context, String name,
    {Object? arguments, String? removeUntil}) {
  Navigator.pushNamedAndRemoveUntil(
      context, name, ModalRoute.withName(removeUntil ?? name),
      arguments: arguments);
}

当在工具栏中按下后按或任何可以从 C 中轻松删除 B 的操作时调用 removeRoute 函数。从 C 屏幕调用下面的函数。假设A从K屏开始。删除直到 K。

 clearRouteAndOpen(
                          context,
                          AppRoutes.A,
                          removeUntil: AppRoutes.K,
                        );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 2021-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多