Контейнер Flutter не перезагружает данные SQLITE при возвращении на домашнюю страницу?

Моя проблема в следующем. У меня есть основная вкладка панели инструментов, на которой есть futurebuilder, который считывает данные из SQLITE, а затем отображает их. У меня также есть другая страница, которая используется для добавления данных в SQLite, а затем используется для возврата на страницу панели инструментов. Единственная проблема, с которой я сталкиваюсь, заключается в том, что вкладка панели инструментов не перезагружается при обработке нажатия, поэтому, когда я переключаюсь между вкладками, данные внезапно загружаются, а затем обновляются соответственно.

Вот что я использую для перехода на страницу с вкладками:

   Navigator.pushAndRemoveUntil(
      context,
      PageTransition(
          type: PageTransitionType.upToDown, child: new Home()),
      (r) => false);

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

  void initState() {
    super.initState();
    setState(() {
      pageIndex = 0;
    });
  }

  pageSetter() {
    if (pageIndex == 0) {
      setState(() {});
      return new Dashboard();
    } else if (pageIndex == 1) {
      return Container();
    } else if (pageIndex == 2) {
      return IncomePage();
    } else {
      return ExpensePage();
    }
  }

И последнее, но не менее важное: это то, что находится на странице, данные о которой мне нужно обновить.

  Future<List<BankCard>> bankcards;

  @override
  void initState() {
    setState(() {
      bankcards = DBProvider.db.getBankCards();
    });
    super.initState();
  }

Затем банковские карты используются в будущем конструкторе позже в коде. Мой код кажется прекрасным с точки зрения функции, поскольку он оказывает желаемое влияние, когда выбирается другая вкладка, а затем возвращается к исходной вкладке, но он не перезагружает будущий построитель после нажатия кнопки навигации. Я предполагаю, что состояние инициализации не запускается, и я не знаю, что еще попробовать. Любая помощь была бы замечательной. Спасибо!

0 ответов

Другие вопросы по тегам