如何实现类似目标:
ListView代码:
return Container(
height: someHeightValue,
child: ListView.builder(
scrollDirection: Axis.horizontal,
shrinkWrap: true,
itemCount: itemsList.length,
itemBuilder: (context, index) {
return ItemWidget(itemsList[index]);
},
)
);
ItemWidget代码:
return Container(
height: someHeightValue, //Changing depending on the item.
color: Colors.pink,
child: Text('Item'),
);
问题在于,所有项目都被拉伸到ListView的高度,而它们忽略了它们的高度值。
如下使用Center()
小部件。它将为您的小部件设置自定义的高度和宽度。
return Container(
height: someHeightValue,
child: ListView.builder(
scrollDirection: Axis.horizontal,
shrinkWrap: true,
itemCount: itemsList.length,
itemBuilder: (context, index) {
return Center(child:ItemWidget(itemsList[index]),);
},
)
);