Dart 颤振中的状态管理(屏幕)——>;持续屏幕
如何从退出应用程序后在应用程序中打开的最后一个屏幕继续。Dart 颤振中的状态管理(屏幕)——>;持续屏幕,dart,flutter,Dart,Flutter,如何从退出应用程序后在应用程序中打开的最后一个屏幕继续。 例如,我有屏幕A、B和C,在关闭应用程序之前我在屏幕B上。我的问题是,当我再次打开应用程序时,如何到达屏幕B。使用SharedReferences将屏幕A、B和C的int中的值分别保存为1、2和3,当它们的initState()方法触发时(以了解各自屏幕打开的情况) 下次打开应用程序时,您可以获取int值,并使用开关来决定加载什么 void main() async { SharedPreferences prefs = await
例如,我有屏幕A、B和C,在关闭应用程序之前我在屏幕B上。我的问题是,当我再次打开应用程序时,如何到达屏幕B。使用
SharedReferences
将屏幕A、B和C的int
中的值分别保存为1、2和3,当它们的initState()
方法触发时(以了解各自屏幕打开的情况)
下次打开应用程序时,您可以获取int
值,并使用开关来决定加载什么
void main() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
Widget rootWidget;
switch (prefs.getInt("key")) {
case 1:
rootWidget = Page1();
break;
case 2:
rootWidget = Page2();
break;
case 3:
rootWidget = Page3();
break;
}
runApp(MaterialApp(home: rootWidget));
}
一旦进入任何屏幕,请在首选项中保存,如lastScreen->B
;启动应用程序时,请检查首选项值并相应地工作。它是否适用于您的应用程序?@CopsOnRoad我还没有尝试过它,但我是否将最后一个屏幕保存到首选项?请给我一个片段help@Moplio对不起,我没听清楚。请详细说明。我的意思是我打开的最后一个屏幕,如何将它(特定屏幕)保存到共享首选项。u共享的代码片段有助于获取保存屏幕的“键”并将其打开。