Метод OnStateChanged во флаттере - PullRequest
0 голосов
/ 15 ноября 2018

В Flutter есть метод, подобный onStateChanged , который вызывается при изменении состояния страницы?

setState(() {
  widget._loadCompleted = true;
  widget._loading = false;
});

Я пытаюсь установитьдва значения bool в методе setState().Я устанавливаю состояния по нескольким другим причинам.Поэтому я хочу знать, было ли последнее изменение состояния по этой конкретной причине.

1 Ответ

0 голосов
/ 15 ноября 2018

Как упоминал Гюнтер, такого понятия, как onStateChanged(), не существует.Вы должны иметь дело с этим build() методом.

Если я вас правильно понял, вы можете использовать вот так:

class _MyAppState extends State<MyApp> {
  bool myFlag = false; // initially set to false

  void _doYourWork() {
    setState(() => myFlag = true); // set to true here
  }

  @override
  Widget build(BuildContext context) {
    if (myFlag) {
      // setState() just got called
    } else {
       // we are building fresh for the first time. 
    }
    myFlag = false;
    return yourWidget();
  }
}

После этого build() получит myFlag значение true и затем может установить false снова.Итак, вы можете сделать этот трюк.

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