flutter 列表自适应宽高
时间: 2023-07-22 17:23:58 浏览: 68
Flutter 中的列表可以使用 ListView 或者 GridView 来实现。关于自适应宽高的问题,可以通过设置列表项的宽高来实现。
例如,如果你想让列表项的高度自适应,可以使用 `Flexible` 或者 `Expanded` 来包裹列表项,具体代码如下:
```dart
ListView.builder(
itemCount: list.length,
itemBuilder: (BuildContext context, int index) {
return Flexible(
child: Container(
// 列表项的样式
padding: EdgeInsets.all(10.0),
decoration: BoxDecoration(
border: Border(bottom: BorderSide(color: Colors.grey[300])),
),
child: Text(list[index]),
),
);
},
)
```
上面的例子中,使用了 `Flexible` 来包裹列表项,这样列表项的高度就会自适应。如果你想让列表项的宽度自适应,则可以将 `Flexible` 换成 `Expanded`。
另外,如果你想让整个列表自适应宽高,可以将 ListView 或者 GridView 放到一个 `Expanded` 或者 `Flexible` 中。例如:
```dart
Flexible(
child: ListView.builder(
// 列表的样式
padding: EdgeInsets.all(10.0),
itemCount: list.length,
itemBuilder: (BuildContext context, int index) {
return Container(
// 列表项的样式
padding: EdgeInsets.all(10.0),
decoration: BoxDecoration(
border: Border(bottom: BorderSide(color: Colors.grey[300])),
),
child: Text(list[index]),
);
},
),
)
```
上面的例子中,将 ListView 放到了一个 `Flexible` 中,这样列表就会自适应宽高。