小编Pit*_*ool的帖子

Flutter:共享首选项在启动时为null

问题:共享的首选项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)

sharedpreferences dart flutter

7
推荐指数
2
解决办法
5395
查看次数

标签 统计

dart ×1

flutter ×1

sharedpreferences ×1