我如何在Flutter中从另一个屏幕到主屏幕接收编辑/更新的数据?

问题描述 投票:0回答:1

目前,我正在学习颤动,并且陷入了导航困境。我想要实现的是:对于所有屏幕都是全局的变量:例如,在主页上有一个变量分数,该分数用零初始化,在主页上有四个按钮,可进入四个不同的屏幕,单击主页上的按钮后,屏幕将切换到另一个屏幕。现在,在另一个屏幕上,我们将执行一些操作以更新score的值。现在,当我们返回主页时,应反映更新的分数,并且如果单击其他按钮将我们带到另一个屏幕,则更新的score也应反映在那里。

flutter dart flutter-layout
1个回答
0
投票

您可以通过多种方式执行此操作,但最简单的方法是使用Navigator类,然后通过.pop()方法将要传递的值传递回父窗口小部件,以返回到第一个视图,如下所示:] >

Navigator.of(context).pop(your_data_here);

在父类上,您使用导航器导航到另一个视图,可以期望收到数据:

RaisedButton(
  onPressed: () {
    Navigator.of(context).push(MaterialPageRoute(
      builder: (context) {
        return OtherView();
      }
    )).then((value_from_other_view){
      // You can here use the data from the other view
    });
  },
)
© www.soinside.com 2019 - 2024. All rights reserved.