当我使用两个嵌套的Listviews和ListView.builder时,它仍会滚动,但是具有shirnkSwap属性的子Listview.builder无法再滚动,但是我不想在小部件容器中使用height属性,因为它是非常难看。
Flutter 1.9.4 SDK
//我的主屏幕
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Color(0xFFEEF0F2),
appBar: AppBar(
backgroundColor: Color(0xFF396DF0),
elevation: 0,
leading: LeadinguttonIcon(),
title: Text('TheGoal'),
actions: <Widget>[ActionIconButton()],
),
body:
ListView(children: <Widget>[TopHomeScreenBody(), BottomHomeScreen()]),
);
}
}```
**// TopHomeScreenBody**
```class TopHomeScreenBody extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ClipPath(
clipper: BodyClipper(),
child: Container(
color: Color(0xFF396DF0),
padding: EdgeInsets.only(top: 10, right: 22, left: 22, bottom: 30),
height: 250,
width: double.infinity,
child: Container(
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(Radius.circular(15))),
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[MainText(), SubText()],
),
),
),
);
}
}```
**// BottomHomeScreen**
```class BottomHomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
// IT CAN SCROLL WHEN ADD HEIGHT BUT I
// DONT WANT USE HEIGHT HERE BECAUSE VERY UGLY APP
// height: 400,
padding: EdgeInsets.all(25),
decoration: BoxDecoration(
color: Color(0xFFEEF0F2),
),
child: ListView.builder(
shrinkWrap: true,
itemBuilder: (context, index) {
return BottomGoalTitle(
text: '${goalList[index].text}',
decsText: '${goalList[index].decsText}',
color: goalList[index].color,
icon: goalList[index].icon,
);
},
itemCount: goalList.length,
),
);
}
}
感谢您的阅读。希望您的帮助!
答案 0 :(得分:0)
如果您不想让listview.builder
滚动,请尝试添加此physics: NeverScrollableScrollPhysics(),