Получить значение переменной в другом виджете - PullRequest
0 голосов
/ 05 мая 2020

У меня вопрос. В моем приложении есть AppBar с раскрывающимся меню. В этом раскрывающемся меню пользователь может установить несколько флажков. Если установлен флажок, variable1 получает значение. Проблема в том, что мне нужно это значение в другом виджете, который создает тело. Я могу передать sh значение другому виджету только с помощью этого кода:

Navigator.of(context).push(MaterialPageRoute(
        builder: (context) => BodyConstruction(value: exerciseToTake),
    ));

Но у меня есть этот код в функции, которая вызывается при изменении флажка bool, поэтому пользователь приходит всегда, когда он устанавливает флажок прямо на другой экран. Теперь мой вопрос: есть ли возможность получить значение проверяемого в другом виджете без изменения экрана?

1 Ответ

0 голосов
/ 05 мая 2020

Сделайте variable1 глобальной переменной (не объявляйте ее ни в каком классе или методе). Вы можете получить к нему доступ в любом месте приложения.

Например ...


var variable1 //variable1 is accessible everywhere because it is top-level

class Page1 extends StatelessWidget{

   @override
   Widget build(){}
}

class Page2 extends StatelessWidget{

   @override
   Widget build(){}
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...