颤振:ListView最大高度

时间:2020-02-24 16:51:25

标签: flutter flutter-layout

我可以这样设置最小高度: 列表显示( 收缩包装:是的, 子代:listItems.toList(), );

但是我怎么有一个最大高度来显示例如最多3个元素? (要查看其余内容,我必须滚动)

1 个答案:

答案 0 :(得分:3)

您可以使用SizedBox包裹ListView,如下所示:

SizedBox(
    height: 300,
        child: ListView(
            children: <Widget>[
                SizedBox(height: 100, child: Placeholder()),
                SizedBox(height: 100, child: Placeholder()),
                SizedBox(height: 100, child: Placeholder()),
                SizedBox(height: 100, child: Placeholder()),
            ],
          ),),

编辑: 如果要使容器在少于3个项目时收缩,请为容器设置maxHeight约束,为ListView设置shrinkWrap: true

Container(
  decoration: BoxDecoration(border: Border.all(width: 2.0, color: Colors.red)),
  constraints: BoxConstraints(maxHeight: 300),
  child: ListView(
    shrinkWrap: true,
    children: <Widget>[
      SizedBox(height: 100, child: Placeholder()),
      SizedBox(height: 100, child: Placeholder()),
    ],
  )
),