Как использовать sharedpreference со спарклайном во флаттере? - PullRequest
0 голосов
/ 20 мая 2019

Здравствуйте. Я попытался создать динамический график со спарклайном, но я не могу использовать свою двойную переменную из sharedpreference ... когда я использую двойную переменную, у меня возникает ошибка: в инициализаторе может быть доступен только статический элемент.Но я пытаюсь нарисовать динамический график, а не статический.

спасибо

пример:

 load_my_variable_double() async {


    SharedPreferences prefs = await SharedPreferences.getInstance();
    setState(() {
      my_variable_double= (prefs.getDouble('my_variable_double'))??0;

    });
  }

     var data = [my_variable_double,];  //only static membre can be accessed in initializer.
...    

       Sparkline
                            (
                            data: data,
                            lineWidth: 5.0,
                            lineColor: Colors.greenAccent,
                          )

1 Ответ

1 голос
/ 20 мая 2019

попробуйте следующее, оно должно работать

 var data;
 load_my_variable_double() async {


    SharedPreferences prefs = await SharedPreferences.getInstance();
    setState(() {
      my_variable_double= (prefs.getDouble('my_variable_double'))??0;
      data = [my_variable_double,];

    });
  }


...    

       Sparkline
                            (
                            data: data,
                            lineWidth: 5.0,
                            lineColor: Colors.greenAccent,
                          )
...