【发布时间】:2021-10-01 04:10:15
【问题描述】:
如何设置 ListView.Separated 中每个 ListTile 项的高度?
我在下面的代码中使用 ListView.Seperated 和 ListTile 项:
Widget _LocationItem(LocationModel location) => Container(
child: Center(
child: ListTile(
title: Text(location.name),
trailing: Icon(Icons.arrow_right),
),
),
);
// *** BUILD WIDGET
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
leading: Icon(Icons.navigate_before),
title: Text("Location"),
),
body: FutureBuilder<List<LocationModel>>(
future: _locationModel,
builder: (context, snapshot) {
if (snapshot.hasData) {
return ListView.separated(
itemCount: snapshot.data!.length,
separatorBuilder: (_, __) => const Divider(),
itemBuilder: (context, index) {
var location = snapshot.data![index];
return _LocationItem(location);
});
} else
return Center(child: CircularProgressIndicator());
},
));
}
这是我的代码的结果:
如您所见,每个文本的顶部和底部都有很多额外的空间。如何去除顶部和底部多余的空间?
我试过设置容器的高度,但实际上只是去掉了底部的空间,看起来不太好。
【问题讨论】:
-
有一个
separatorBuilder: (_, _) => hereCanDefineHeight,,可以用SizedBox(), Container()