169 похожих чатов

Всем привет. Сложный вопрос. Есть FutureBuilder, но его проблема в

том, что он возвращает один виджет. А мне нужно асинхронно возвращать список виджетов, который я потом могу вставить в другой список (например children или slivers). Не могу сообразить, возможно ли вообще такое написать? Все виджеты и билдеры во флаттере возвращают один виджет, а мне нужен список. Обернуть список в Row/Column я тоже не могу, потому что это все нужно вставить внутрь SliverList, а там вложенные slivers не будут нормально работать. Есть какие идеи? Спасибо.

11 ответов

30 просмотров
Юджин Флаттер- Автор вопроса

Это как? ))

Юджин Флаттер
Это как? ))

SliverList(delegate: SliverChildListDelegate([Container(), Container()].map((e) => e).toList()))

Юджин Флаттер- Автор вопроса
Руди
SliverList(delegate: SliverChildListDelegate([Cont...

Список виджетов нужно получать из асинхронной функции. В этом все дело.

Наверняка надо будет вместо future builder где то все это awaitнуть и использовать блок если у тебя есть state

Юджин Флаттер- Автор вопроса
Юджин Флаттер
Список виджетов нужно получать из асинхронной функ...

Так а зачем так делать то вообще? Нужно получать данные и на основании них уже генерить виджеты

Юджин Флаттер- Автор вопроса
Dmitry Maslov
Так а зачем так делать то вообще? Нужно получать д...

Ну вот мне и нужно вставить 10 виджетов в родительский список. И эти 10 виджетов могут быть построены только по завершении фьючи.

Юджин Флаттер
Ну вот мне и нужно вставить 10 виджетов в родитель...

А что тебе мешает обернуть весь этот список в BlocBuilder внутри под конец сделать ...state.mywidgets?

Юджин Флаттер- Автор вопроса
Azizulloh Zohidov
А что тебе мешает обернуть весь этот список в Bloc...

Что-то я туплю. Внутрь BlocBuilder нужно передать обычный builder, который по спецификации не умеет возвращать список.

Так смотри вот список про который ты говоришь все равно возвращается через builder виджета(будь то страницы или ещё что). Вот ты берешь в рут этой страница(в builder) ставишь BlocBuilder и по стейтам рендеришь что хочешь а когда там будет success state ты просто берешь и спредишь виджеты которые приходят с bloc

Юджин Флаттер- Автор вопроса
Azizulloh Zohidov
Так смотри вот список про который ты говоришь все ...

Ну, идея понятная. Свой StatefulWidget, где в initState() мы фьючу запускаем, на then() вешаем setState(), а в build() спредим. Громоздко, но видимо по другом никак. Спасибо.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта