【发布时间】:2020-04-19 03:52:30
【问题描述】:
我正在尝试使用共享首选项写入和读取数据,但我不知道如何读取多个数据。路线是这样的...我有 3 个屏幕(登录、主页和个人资料屏幕)在主页和个人资料屏幕内由底部选项卡导航器组成......所以在我通过登录屏幕后,我想保存用户名和 ID 以将其传递到主页和个人资料屏幕......到目前为止,我已经在登录内保存了用户名和 ID屏幕,我只是不知道如何阅读它们。这是代码
class _BottomTab extends State<BottomTab> {
@override
Widget build(BuildContext context) {
return FutureProvider<String>(
create: (context) async {
final prefs = await SharedPreferences.getInstance();
return prefs.getString("username");
},
child: ...,
);
}
}
}
这里是调用用户名但我不知道如何调用id的方式
Widget build() {
final username = Provider.of<String>(context).toString();
if (username == null) {
return "Loading...";
}
return Text("Hi $username");
}
我试图创建一个新函数并在 initState() 中定义该函数...但问题是每当我单击 bottomTab 时数据总是重新构建...这就是我没有使用此方法的原因(声明initState 中的函数)
【问题讨论】: