Wrap 在 listview.builder flutter 中不起作用
Wrap is not working in listview.builder flutter
我想实现像 pic1
这样的项目芯片(最新,最受欢迎)的布局
但我能做到的是图2中的这个
我已经搜索了很多示例,但我不明白我在使用 WRAP.I 时做错的地方 WRAP.I 试图包装整个列表视图但没有工作。这是我的代码
Container(
height: SizeConfig.screenHeight / 2,
child: ListView.builder(
shrinkWrap: true,
itemCount: _selectKeywords.length,
itemBuilder: (context, index) {
return Wrap(
children: <Widget>[
Chip(
label: Text(
_selectKeywords[index],
),
onDeleted: () {
setState(() {
_selectKeywords.removeAt(index);
});
},
),
],
);
}),
),
您不需要在此处使用 ListView.builder
,但您可能想尝试使用 List.generate
,如下所示:
Wrap(
spacing: 5,
children: List.generate(
10,
(index) {
return Chip(
label: Text(_selectKeywords[index]),
onDeleted: () {
setState(() {
_selectKeywords.removeAt(index);
});
},
);
},
),
);
我想实现像 pic1
但我能做到的是图2中的这个
我已经搜索了很多示例,但我不明白我在使用 WRAP.I 时做错的地方 WRAP.I 试图包装整个列表视图但没有工作。这是我的代码
Container(
height: SizeConfig.screenHeight / 2,
child: ListView.builder(
shrinkWrap: true,
itemCount: _selectKeywords.length,
itemBuilder: (context, index) {
return Wrap(
children: <Widget>[
Chip(
label: Text(
_selectKeywords[index],
),
onDeleted: () {
setState(() {
_selectKeywords.removeAt(index);
});
},
),
],
);
}),
),
您不需要在此处使用 ListView.builder
,但您可能想尝试使用 List.generate
,如下所示:
Wrap(
spacing: 5,
children: List.generate(
10,
(index) {
return Chip(
label: Text(_selectKeywords[index]),
onDeleted: () {
setState(() {
_selectKeywords.removeAt(index);
});
},
);
},
),
);