【发布时间】:2019-10-01 17:15:59
【问题描述】:
我有一个简单的 Flutter 函数,可以从共享首选项中获取计数器,将其递增,然后将其保存回共享首选项。它位于一个单独的文件中,因为我将添加更多代码并从多个屏幕调用它。问题是当我重新启动应用程序时计数器值不会持续存在。我怀疑问题是我的计数器变量的范围,但我不知道如何解决它。
这是我的代码:
import 'package:shared_preferences/shared_preferences.dart';
var fileName = 'Counter';
int counter;
updateCounter() {
getCounter(counter) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
counter = (prefs.getInt('$fileName') ?? 0);
}
putCounter(counter) async {
SharedPreferences preferences = await SharedPreferences.getInstance();
preferences.setInt('$fileName', counter);
);
}
getCounter(counter);
if (counter == null) {
counter = 0;
}
counter++;
putCounter(counter);
}
【问题讨论】: