在水平ListView中,如何分别设置项目的高度?

问题描述 投票:0回答:1

如何实现类似目标:

enter image description here

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的高度,而它们忽略了它们的高度值。

flutter flutter-layout
1个回答
1
投票

如下使用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]),);
                  },
                )
       );
© www.soinside.com 2019 - 2024. All rights reserved.