Flutter中去掉ListView和GridView产生的顶部边距
Flutter中关于ListView和GridView会产生顶部边距的问题解决
通过MediaQuery.removePadding可以将ListView和GridView的默认边距移除
Positioned(
top: MediaQuery.of(context).padding.top + 110,
child: Container(
width: MediaQuery.of(context).size.width,
height:MediaQuery.of(context).size.width/(2.0 * 3.3) * 2,
decoration: BoxDecoration(color: Color(0xFF000000)),
child:MediaQuery.removePadding(
removeTop:true,
context:context,
child: GridView.builder(
shrinkWrap: true,
scrollDirection: Axis.vertical,
itemCount: 4,
//SliverGridDelegateWithFixedCrossAxisCount 构建一个横轴固定数量Widget
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
//横轴元素个数
crossAxisCount: 2,
//纵轴间距
mainAxisSpacing: 0,
//横轴间距
crossAxisSpacing: 0,
//子组件宽高长度比例
childAspectRatio: 3.3
),
itemBuilder: (BuildContext context, int index) {
return _getGridItemWidget(index);
}
),
),
),
),
这里我通过GridView的子组件宽高长度比例和行数,计算出了外容器的真实高度。
本站内容来源于作者发布和网络转载,如有版权相关问题请及时与我们取得联系,我们将立即删除。