Flutter中的状态管理(屏幕) - >持续屏幕

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

退出后,如何从我在应用程序中打开的最后一个屏幕继续。比方说,我有屏幕A,B和C,我关闭应用程序之前我在屏幕B上。我的问题是,当我再次重新打开应用程序时,如何进入屏幕B.

dart flutter
1个回答
0
投票

SharedPreferences方法触发时,使用intinitState()中的值保存为屏幕A,B和C分别为1,2和3(以获得相应屏幕打开的想法)

当您下次打开应用程序时,您可以获取int值并使用switch来决定要加载的内容。

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));
}
© www.soinside.com 2019 - 2024. All rights reserved.