flutter - Gridview Flutter的最后一个奇数项水平居中
问题描述
我正在使用Gridview
构建器来懒惰地显示我的项目。我的gridview's
itemcount 是 5,crossAxiscount 是 2。有没有办法将第 5 个项目水平居中?谢谢你试图帮助我。
这是我的Gridview
样子:
GridView.builder(
shrinkWrap: true,
itemCount: list.length, //the value is 5
gridDelegate:
SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2),
itemBuilder: (BuildContext context, int i) {
return card(i); //widget that returns a card
},
),
解决方案
我终于知道我应该做什么了。由于 myGridView's itemcount
是静态的并且已知是 5,因此我可以简单地card(i)
使用Wrap
小部件进行包装并将其设置alignment
为crossAxisAlignment
居中。
这是我能够解决它的方法:
Wrap(
spacing: 8, //vertical spacing
runSpacing: 8, //horizontal spacing
alignment: WrapAlignment.center,
crossAxisAlignment: WrapCrossAlignment.center,
children: <Widget>[
card(0),
card(1),
card(2),
card(3),
card(4),
],
),
推荐阅读
- zabbix - Zabbix:删除不再可发现的主机
- python - 从两个数据帧的两列中的相似值创建新数据帧
- javascript - 使用 Lodash 对对象数组进行分组和求和
- c++ - 是否可以强制通过引用或指针(C++)传递一个类?
- python - 如何根据我的意见而不是基于 Python 中 Pandas 数据框中的某些键来更改索引的顺序?
- python - Python 请求被网站阻止
- performance - 除了 Sitespeed.io,还有哪些最好的自动化客户端性能测试工具?
- javascript - 如何将项目添加到现有数组而不影响 React 中的当前数组
- javascript - 布局中的 Xaxis 和 yaxis 自定义属性未针对 plotly 3d 网格图显示
- android - Duplicate Classes in AWS API and Appsync Serivces for Android