Как смоделировать поведение spaceBetween в listView?
У меня есть столбец таких элементов:
Column(
children: [
...items,
Spacer(),
Footer(),
],
)
Однакоitems
список может быть динамическим, поэтому необходимо использовать вместо . Единственная проблема в том, что мойFooter
был разделен с помощьюSpacer
Виджет выдаст ошибку, если он используется в ListView.
Что я могу использовать, чтобы добиться эффектаColumn
моемуListView
когда всего несколько предметов не заполняют весь экран?
3 ответа
Вы можете использовать SizeBox(heigth:ваш рост) вместо Spacer();
Эта проблема у меня часто возникала, когда я еще учился.
Я думаю, у вас та же проблема,
Шаг 1. Вы не должны использовать его в качестве родительского.
Шаг 2: Используйте виджет внутри файла .
Шаг 3: ВнутриExpanded
используйте другой и поместите теitems
.
Например:
Column(
children: [
Expanded(
child: Column(
children: [
...items,
],
),
Footer(),
],
)
Вы можете настроить поведение прокрутки для этого второгоColumn
ДаваяSingleChildScrollView
или используйте любойListView
Я нашел это решение:
CustomScrollView(
slivers: <Widget>[
SliverList(
delegate: SliverChildListDelegate(items),
),
SliverFillRemaining(
hasScrollBody: false,
child: Footer(),
),
],
),