如何解决嵌套的GridView抖动
我正在尝试使用GridView
构建器在flutter中构建嵌套列表。但是子列表的高度很小。由于我没有为任何列表指定高度,因此我不知道如何增加高度。
这是我用来构建嵌套列表的代码。
return DecoratedBox(
decoration: const BoxDecoration(
color: Styles.scaffoldBackground,),child: SafeArea(
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,children: [
_buildSearchBox(),Expanded(
child:GridView.builder(
shrinkWrap: true,gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 1,childAspectRatio: 3/1,crossAxisSpacing: 20,mainAxisSpacing:50),padding: const EdgeInsets.all(10.0),itemCount: res2.length,itemBuilder: (context,index) => ChangeNotifierProvider.value(
value: res2[index],child:Column( mainAxisAlignment: MainAxisAlignment.spaceEvenly,children:<Widget>[
GestureDetector(
onTap: (){
Navigator.push(
context,MaterialPageRoute(builder: (context) => ProductOverview()));
},child: shopItem(),Expanded(
child:Container(
height: 10*_blockSizeVertical,child:GridView.builder(
physics: ClampingScrollPhysics(),shrinkWrap: true,gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 1,mainAxisSpacing: 20),itemCount: results.length,index) => ChangeNotifierProvider.value(
value: results[index],child: productItem(
),],);
}
列表的屏幕截图:
解决方法
更改父GridView的childAspectRatio
。它需要宽度/高度。
将其更改为childAspectRatio: 3/6 ;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。