想了解更多关于Flutter的知识,可以关注:
https://github.com/jiangkang/flutter-system
https://jiangkang.tech
在上一篇文章 GridView.count 中讲过 GridView.count的用法,这里讲一下GridView.extent的用法。
GridView.count 是在交叉轴上创建固定个数的Item,crossAxisCount为必须的属性,表示交叉轴Item的个数;
GridView.extent是在交叉轴上创建最大可容纳的Item,maxCrossAxisExtent是必须的属性,表示交叉轴上Item最大的宽度;
如果GridView的主轴是纵轴,横轴是交叉轴(默认情况),设定交叉轴的宽度为500px,maxCrossAxisExtent 为 150,由于4x150 < 500 < 5 x150,因此Item有4个,500px/ 4 = 125px,因此Item的宽度为125px(不考虑Item之间的间距)。
下面看一下具体的例子:
- maxCrossAxisExtent = 1000:
- maxCrossAxisExtent = 100:
- maxCrossAxisExtent = 10: