【发布时间】:2020-05-04 11:14:45
【问题描述】:
我正在使用 SharedPreferences 我做了一个简单的保护程序和吸气剂,但我想在使用 initState 打开应用程序时加载我的变量 name:
数据是一个带占位符的字符串
保存器
Future<String> saveNamePreference(String name) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.setString('name', name);
print(name);
return prefs.getString(name);
}
吸气剂
Future<String> getNamePreference() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
final name = prefs.getString('name');
return name.toString();
}
无效初始化状态
@override
void initState() async {
super.initState();
await getNamePreference();
setState(() {
data = name;
});
}
【问题讨论】:
-
你试过了吗 -
name = await getNamePreference();in initState() 或setState() => data = await getNamePreference(); -
已经有一个类似的帖子here 提供了答案。