我的身体中有一个选项卡,然后有一个列,在其中调用使用另一个小部件类构建卡的动态列表。一切似乎都正常,但我遇到了这个错误。
The following message was thrown during layout:
I/flutter ( 5090): A RenderFlex overflowed by 115 pixels on the bottom.
问题是,即使我将列表包装到灵活的小部件中,列表也无法滚动。这是构建列表的代码片段。我还启用了物理功能:AlwaysScrollableScrollPhysics(),但同样的问题。我知道如果固定一个特定的高度将可以使用,但是我不想这样做会导致整个想法失败。
Widget buildDynamicList(BuildContext context) {
return new Flexible(
//decoration: new BoxDecoration(border: new Border.all(width: 2.0)),
//height:double.infinity,
//fit: FlexFit.loose ,
child: ListView.builder(
physics: AlwaysScrollableScrollPhysics(),
shrinkWrap: true,
itemCount: vehicles.length,
itemBuilder: (BuildContext ctxt, int index) {
return Row(
mainAxisSize: MainAxisSize.max,
//mainAxisSize: MainAxisSize.max,
children: <Widget>[
RouteTile(index: index)
// expansionConfigurableRouteTile(ctxt, index),
],
);
}
)
);
}
答案 0 :(得分:1)
Flexible仅使您的孩子的身高可变。它不会使列表可滚动。为此,请使用SingleChildScrollView小部件包装您的Flexible小部件。
答案 1 :(得分:0)
删除shrinkWrap: true
可以解决问题