Я пишу флаттер-приложение и у меня есть функция SearchDelegate, в которой я пытаюсь разместить фильтры в качестве дополнения к запросу. Для этого у меня есть кнопка buildActions, которая отображает список фильтров, вы можете выбрать то, что хотите, а затем всплывающее окно исчезнет и вернет список фильтров. Я пытаюсь принудительно перезагрузить поиск:
List buildActions (контекст BuildContext) { кубит.clearSearchResults(); возвращаться [ ЗначокКнопка( значок: константный значок( ThemeIcon.clear, ), onPressed: query.isEmpty? null : () => запрос = '', ), запрос.isNotEmpty ? ЗначокКнопка( значок: константный значок( ThemeIcon.filter_list, ), onPressed: () асинхронный { Карта? выбранные значения = await showDialog( барьерDismissible: правда, контекст: контекст, строитель: (контекст BuildContext) { вернуть FiltersPopup(фильтры); }, ); если (selectedValues!= ноль) { фильтры = selectedValues["фильтры"]; // TODO: перестроение триггера } }, ) : const SizedBox.shrink(), ]; } Я пробовал:
[*]чтобы изменить запрос, чтобы принудительно перезагрузить его, но это не работает, запрос удаляется из панели поиска, но после этого ничего не происходит. [*]запустите функцию buildResults, но безуспешно
Любая помощь будет очень признательна
Мобильная версия