【发布时间】:2021-11-20 12:58:47
【问题描述】:
以前我使用 ListView.builder 来显示我的列表,它尊重内容的高度 (图 3),但是我需要在 2 列中显示它使用 GridView,不幸的是,这不再考虑高度,这就是为什么我对 childAspectRatio (图片 1) 进行了精确计算,知道只是系统的字母大小在1.0,但是放大的时候溢出容器(图2),因为的值没有展开em>Ratio 已经是静态的了;例如:
final itemWidth = MediaQuery.of(context).size.width;
double ratio;
if(isBigBox){
ratio = (itemWidth / 117);
} else {
ratio = (itemWidth / 50);
}
return GridView.count(
crossAxisCount: 2,
physics: NeverScrollableScrollPhysics(),
crossAxisSpacing: 10.0,
mainAxisSpacing: 10.0,
childAspectRatio: ratio,
shrinkWrap: true,
children: list.map((dynamic item) {
return Boxes(
item: item,
);
}).toList(),
);
我需要知道如何以这种方式处理 GridView 的 Ratio。 我的目标是 GridView 元素的高度应尽可能低。
谢谢。
【问题讨论】:
标签: flutter dart listview gridview