问题:共享的首选项bool值正在null启动,即使prefs.getBool('myBool')返回时我已经给了它一个值null(尽管我的共享的首选项值应该已经设置并保存了)。但是,它在我按下按钮时就起作用了(我想是因为它已经完成了异步代码的运行)。
问题:如何强制共享首选项在启动时加载(因此,我的值不是null)而不必按下打印按钮?
示例代码:
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:shared_preferences/shared_preferences.dart';
void main() => runApp(new MyApp());
class MyApp extends StatefulWidget {
MyApp({Key key}) : super(key: key);
@override
createState() => new MyAppState();
}
class MyAppState extends State<MyApp> {
final padding = const EdgeInsets.all(50.0);
@override
void initState() {
super.initState();
MySharedPreferences.load();
MySharedPreferences.printMyBool();
}
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
body: new Padding(
padding: padding,
child: new Column(
children: <Widget>[
new Padding(
padding: …Run Code Online (Sandbox Code Playgroud)