我已经创建了RadioListTiles的ListView,但是RadioListTiles之间的空间太大。如何删除它们? 在其构造函数中没有填充属性。
这是我的代码
@override Widget build(BuildContext context) {
Column taskView = Column(
children: <Widget>[
...,
Expanded(
child: ListView.builder(
padding: EdgeInsets.all(0.0),
itemCount: tasks.length,
itemBuilder: (context, index) {
return RadioListTile<String>(
title: Text(tasks[index]),
value: tasks[index],
groupValue: selectedRadio,
onChanged: (val){
setSelectedRadio(val);
}
);
},
),
),
],
);
return Scaffold(
body: taskView,
);
}
答案 0 :(得分:0)
您可以尝试填充控件来包装文本或RadioListFile。 尝试这种方式。
return Padding(
padding: const EdgeInsets.all(8.0),
child: RadioListTile<String>(
title: Padding(
padding: const EdgeInsets.all(8.0),
child: Text(tasks[index]),
),
value: tasks[index],
groupValue: selectedRadio,
onChanged: (val){
setSelectedRadio(val);
}
),
);
答案 1 :(得分:0)
如果你想水平删除空间然后使用
contentPadding: EdgeInsets.all(4.0),
在 RadioListTile 中删除空间默认为 16.0。
答案 2 :(得分:0)
像这样用 Align
小部件包裹标题
RadioListTile<String>(
title: Align(
child: Text(tasks[index]),
alignment: Alignment(-1.1, 0),
),
value: tasks[index],
groupValue: selectedRadio,
onChanged: (val) {
setSelectedRadio(val);
},
);