如何在共享首选项中添加小部件

时间:2019-04-09 07:34:18

标签: dart flutter

我构建了一个带有介绍性滑块的应用程序,这些滑块在用户登录后出现。 我希望介绍性滑块仅在首次用户登录时出现,而不是每个登录用户都显示。

如何将所有小部件保存在SharedPreference中?

2 个答案:

答案 0 :(得分:0)

您无法将窗口小部件保存在SharedPreferences中。您可以保存布尔值以显示或不显示介绍性小部件。默认情况下,将变量的布尔值设置为true表示可以显示介绍性幻灯片,然后在成功显示幻灯片后将布尔值设置为false。这样从下次开始就不会出现。

答案 1 :(得分:0)

无法将Widget保存在SharedPreferences中。 您可以尝试这种简单的逻辑。

@override
void initState() {
  super.initState();
  SharedPreferences.getInstance().then((prefs) {
    bool isFirstTime = prefs.getBool("first_time") ?? true;
    if (isFirstTime) {
      // it is first time app opening you can show your intro part
      // also call setState() from here to reflect changes in the build method.
      prefs.setBool("first_time", false);
    } else {
      // it is regular opening of the app.
    }
  });
}