一尘不染

如何在Flutter App中管理选项卡之间的状态

flutter

我在应用程序中使用TabBar,需要在第一个选项卡中获取Input并
根据其他选项卡上的计算结果显示输出。

我可以在第一个选项卡中获得输入,但是当我单击第二个选项卡时,我的状态将会丢失。我不确定是否必须在根级别将其设置为有状态的小部件。

我在移动应用程序中相对较新。有人可以帮我吗?

编辑:

现在我可以实现上面所说的内容,但是当我尝试从第一个选项卡访问项目列表时,它在第二个选项卡中引发null异常吗?

如下面的答案所述,我使用 AutomaticKeepAliveClientMixin 解决了上述问题。


阅读 279

收藏
2020-08-13

共1个答案

一尘不染

我想你可能会追求的是AutomaticKeepAliveClientMixin。我总是将其添加到的屏幕小部件中TabBarView。这样,当用户将数据输入一个选项卡中的字段并导航到其他选项卡并返回数据时,数据仍然如您所愿。然后,当用户执行“保存”之类的操作时,我将处理状态管理(BLoC等)。

2020-08-13