如何删除/调整ListView中RadioListTiles之间的空间?

时间:2019-05-22 07:12:44

标签: flutter

我已经创建了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,
    );
  }

enter image description here

3 个答案:

答案 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);
      },
    );