【问题标题】:Pop to another page with data弹出到另一个包含数据的页面
【发布时间】:2021-02-04 09:10:58
【问题描述】:

当我从特定屏幕弹出时,我想将布尔值发送到我的其他页面让我们称之为 Screen2 我的主屏幕是 Screen1,

屏幕3

bool data=true;
   
 Navigator.of(
   context,
  ).popUntil((_) => count++ >= 2);

屏幕2

用户将从第一个 Screen1 推送到 Screen2,然后将 Screen2 推送到 Screen3,然后从 Screen3 弹回到 Screen1

屏幕1

  bool isScreen1PoppedFromScreen2(data){
    if(data)
      return true;
    else{
    return false;
    }
}

有没有办法在不使用 Navigator.push 或 Navigator.pushNamed 的情况下做到这一点?

【问题讨论】:

    标签: flutter navigator


    【解决方案1】:

    从第二个屏幕弹出时,您可以

    Navigator.pop(context, true);
    

    在第一个屏幕中,您可以导航到第二个屏幕

    final result =Navigator.push(
        context,
        MaterialPageRoute(builder: (context) => SecondRoute()),);
    

    现在您可以使用“结果”作为布尔变量来检查是否导航。(当您弹出第二个屏幕时,结果的值将变为真,即您已弹出第二个屏幕)

    【讨论】:

    • 其实有3个屏幕,我推第一个到第二个,第二个到第三个,然后弹出第三个到第一个,去编辑问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多