【问题标题】:Why aren't my variables getting saved w/ shared_preferences in Flutter?为什么我的变量没有在 Flutter 中使用 shared_preferences 保存?
【发布时间】:2022-11-27 10:18:13
【问题描述】:

我正在创建一个应用程序,用户可以在其中创建一个独特的主页。我想在用户关闭应用程序时保存主页,因此我使用 shared_preferences 来保存构成用户主页的变量。变量是 exercise1 和 exercise1 time 下面是我的代码:

class _homeState extends State<home> {
  void sete1() async {
    final prefs2 = await SharedPreferences.getInstance();
    prefs2.setString(exercise1, "");
  }

  void loade1() async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    setState(() {
      exercise1 = (prefs.getString(exercise1) ?? '');
    });
  }

  void sete1time() async {
    final prefs3 = await SharedPreferences.getInstance();
    prefs3.setString(exercise1time, "");
  }

  void loade1time() async {
    SharedPreferences prefs1 = await SharedPreferences.getInstance();
    setState(() {
      exercise1time = (prefs1.getString(exercise1time) ?? '');
    });
  }

  @override
  void initState() {
    super.initState();
    sete1();
    loade1();
    sete1time();
    loade1time();
  } 

请告诉我为什么上面的代码不起作用!我正在设置并获取变量,但是当应用程序关闭时它们仍然没有保存......(另外,我在 _homeState 类之后有代码,但我只是没有在这里发布)

【问题讨论】:

    标签: flutter


    【解决方案1】:

    initState() 是正在执行的第一段代码。

    你要做的第一件事就是覆盖sete1()sete1time() 中具有此新默认值的旧值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-13
      • 2021-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-10
      相关资源
      最近更新 更多