layout - 如何正确设置 ListView 的高度

标签 layout dart flutter

我有一列有3个 child 。第三个 child 有一个ListView。如何设置ListView的高度,使其不会溢出屏幕。我不想通过从屏幕高度中减去其他2个 child 的高度来计算高度。我尝试了LayoutBuilder,但是我得到的框约束具有无限高作为最大高度(BoxConstraints(0.0 <= w <= 360.0,0.0 <= h <= Infinity))

我的小部件树看起来像这样

Container(  //Container A
 height: MediaQuery.of(context).size.height,
 child:Column(children:[
    TitleWidget(),
    SubtitleWidget(),
    Container( //Container B
      child:ListView(children:getChildren())
    )        
 ])
)

容器A的高度是屏幕高度。但是容器B的高度应为屏幕高度-TitleWidget()的高度-SubtitleWidget()的高度。
如果我未明确设置容器B的高度,则会收到“底部的X像素溢出RenderFlex”。

我在这里真的错过了什么吗?

谢谢

最佳答案

用扩展小部件而不是容器小部件包装列表 View 。

关于layout - 如何正确设置 ListView 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52918865/

相关文章:

flutter - 底纸溢出

dart - 在聚合物表达中访问静态场

Flutter 增加 Switch 的高度和宽度?

flutter - Flutter中使用 'body'后, ' bottomNavigationBar'部分不可见

javascript - 如何使用 CSS 构建此布局?

html - 位置为 :fixed nav 的流体布局

flutter - 错误 : Unable to create dart snapshot for flutter tool

dart - 管理 PaginatedDataTable 的 DataTableSource 的最佳方式?

android - 在android中将TextView设置到垂直LinearLayout的右侧

html - 为什么我的 "container"div 不包含我的 float 元素?