Flutter 如何设置包含GridView子项的容器()高度??颤振
我正在尝试制作gif图片库。 我想用容器包装gridview,但容器需要设置高度。 如何设置容器()的相对高度?? 我想制作gridview。项目增加,容器高度也增加 红线是我设置的当前容器高度Flutter 如何设置包含GridView子项的容器()高度??颤振,flutter,gridview,containers,height,Flutter,Gridview,Containers,Height,我正在尝试制作gif图片库。 我想用容器包装gridview,但容器需要设置高度。 如何设置容器()的相对高度?? 我想制作gridview。项目增加,容器高度也增加 红线是我设置的当前容器高度 Container( margin: EdgeInsets.only(top: 10), padding: EdgeInsets.symmetric(horizontal: 10), heigh
Container(
margin: EdgeInsets.only(top: 10),
padding: EdgeInsets.symmetric(horizontal: 10),
height: 1000,
width: double.infinity,
child: GridView.builder(
physics: NeverScrollableScrollPhysics(),
itemCount: 6,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3,
// childAspectRatio: 3 / 2,
// crossAxisSpacing: 10.0,
// mainAxisSpacing: 10.0,
),
itemBuilder: (context, index) => ChangeNotifierProvider.value(
value: videos[index],
child: VideoGifItem(),
)),
),
如果您需要您的
GridView
小部件根据其拥有的项目数量来占用空间
您可以将GridView
小部件的shinkWrap
属性设置为true
我以您的代码为例添加了一个演示:
Container(
margin: EdgeInsets.only(top: 10),
padding: EdgeInsets.symmetric(horizontal: 10),
width: double.infinity,
child: GridView.builder(
// set the shrinkWrap property to true
shrinkWrap: true, // new line
physics: NeverScrollableScrollPhysics(),
itemCount: 6,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3,
// childAspectRatio: 3 / 2,
// crossAxisSpacing: 10.0,
// mainAxisSpacing: 10.0,
),
itemBuilder: (context, index) => ChangeNotifierProvider.value(
value: videos[index],
child: VideoGifItem(),
),
),
),
为什么要将
网格视图
包装在容器中
?您可以将GridView
的shrinkWrap
属性设置为true
,这样它只占用所需的空间(基于项目)。