使用导航器时保留页面状态

时间:2020-01-31 10:05:21

标签: flutter state-management flutter-provider flutter-navigation flutter-state

我有一个显示四个不同页面的PageView()和一个用于导航到那些页面的BottomNavigationBar。当我使用Navigator.push()推动第二条路线,并使用Navigator.pop将其弹出以再次显示初始页面时,我在第一页上有一个FloatingActionButton,再次在第四页上使用它时,也会发生相同的情况,返回第一个屏幕,而不是与我在该页面上执行操作的屏幕相同的屏幕。那么如何在保留该页面状态的同时导航回到同一页面?

我已经使用AutomaticKeepAliveClient mixin在浏览底部导航栏时保留页面的状态,但是无法使用Navigator来实现。

This article by Andrea Bezzito确实涵盖了其中的某些部分,但是我不确定那是否正是我想要的。因此想寻找其他可用的解决方案。

谢谢。

1 个答案:

答案 0 :(得分:1)

您要寻找的被称为Provider。这是一个如何使用提供程序的非常简单的示例。 https://github.com/m-Skolnick/provider_example_flutter