首页 > 解决方案 > 现在我希望页面 D 弹出到页面 B 怎么做

问题描述

我的业务场景是在一个页面内,我需要依次进入多级页面,选择最后一级页面,然后将参数返回到上一页面。我应该怎么办?

现在我希望页面 D 弹出到页面 B

怎么做?

标签: flutter

解决方案


使用popUntil。将您的页面 B 替换为 '/login' 示例。

Navigator.popUntil(context, ModalRoute.withName('/login'));

//a.dart
onTap: () {
  Navigator.push(
    context,
    new MaterialPageRoute(
      builder: (context) => BPage(),
      settings: RouteSettings( // set route settings
        name: "bpage" // you will use this string in popUntil
      )
    ),
  );
},


//d.dart
child: GestureDetector(
  onTap: () {
    Navigator.popUntil(context, ModalRoute.withName('bpage')); // here
  },
  child: Text('return A'),
),

推荐阅读