Flutter ListView不显示Item的问题解决
写代码的时候我碰到了一个这样的需求,一般来说,用LIstView就可以解决
Card(
shape: const RoundedRectangleBorder(borderRadius: BorderRadius.all(Radius.circular(10.0))), //设置圆角
elevation: 5,
margin: EdgeInsets.only(left: 20,right: 20,top: 20),
child: Column(
children: [
Row(
children: [
///小矩型
Container(
margin: EdgeInsets.only(left: 10,bottom: 10,top: 10,right: 10),
height: 20,
width: 6,
color: Color(0xff3381ff),
),
Text('每周报告'),
///全部
Expanded(
flex: 1,
child: Container(
margin: EdgeInsets.fromLTRB(0, 0, 10, 0),
alignment: Alignment.centerRight,
child: Chip(
backgroundColor: Colors.transparent,
label: Text('全部'),
///点击全部的时候执行的方法
onDeleted: (){
},
deleteIcon: Icon(Icons.arrow_forward_ios_outlined,size: 17,),
deleteIconColor: Color(0xff999999),
deleteButtonTooltipMessage: '全部',
),
),
),
],
),
ListView.builder(
padding: EdgeInsets.all(5.0),
itemExtent: 50.0,
itemCount: 3,
itemBuilder: (BuildContext context,int index){
return Text("text $index");
},
),
],
),
),
运行完结果是这个样子的
解决办法:
在ListView中加入一行 shrinkWrap: true,也就是这样
ListView.builder(
shrinkWrap: true,
padding: EdgeInsets.all(5.0),
itemExtent: 50.0,
itemCount: 3,
itemBuilder: (BuildContext context,int index){
return Text("text $index");
},
),