Фоновые процессы не могут всплыть () showDialog из навигатора - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь создать процесс, в результате которого мое приложение будет отображать диалоговое окно showDialog в течение определенного периода времени, а затем ТОЛЬКО после получения информации из онлайн-ресурса отменять его из диалогового окна show.

Я сделал это с помощью изменения всего нового виджета scaffold без каких-либо проблем, и navigator.pop (); просто без проблем возвращает меня в предыдущий контекст.

Однако с помощью виджета showDialog my Navigator.of (context) .pop (); только когда-либо касается базового экрана.

Я знаю, как закрыть диалоговое окно показа, если у меня есть кнопка, но такой же код не работает.

В основном контекст, передаваемый в Navigator.of (context) .pop (); строка не совпадает с контекстом окна showDialog ... И я не знаю почему.

Пример кода:

<Code that decides when to call myDialog>

myDialog(context);

<Other code in a decision-tree although in the same root function>

if (condition) {
  Navigator.of(context).pop();
}


  Future<void> myDialog(BuildContext context) async {
    return showCupertinoDialog(
      context: context,
      <Code that shows Body of dialog box>
    ),
  }

Так что да, очевидно, что контекст передается это неправильно, но я не знаю почему.

...