删除或设置 ListTile 中的填充

dcc*_*ccl 4 padding dart flutter

我对 Flutter / Dart 完全陌生,所以如果这是一个菜鸟问题,请原谅。我试图从“第一个应用程序”示例代码中删除 ListTile 元素文本顶部和底部的空间。 基本上就是带有红色指针的两个区域。

代码看起来像

  return ListTile(
    //dense: true,
    //minVerticalPadding: 1.0,
    //contentPadding: EdgeInsets.symmetric(vertical: 1),
    tileColor: Colors.blue,
    title: Text(
      pair.asPascalCase,
      style: _biggerFont,
    ),
  );
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我尝试了密集、minVerticalPadding 和 contentPadding,但它们都没有完成这项工作。

非常感谢您为我指明了正确的方向!

Ali*_*deh 6

您可以使用VisualDensity属性来设置ListTile. 该值不能低于 -4 且不能高于 +4:

ListTile(
      contentPadding: EdgeInsets.zero,
      dense: true,
      visualDensity: VisualDensity(horizontal: -4, vertical: -4),
      title: Text("hello"),
    )
Run Code Online (Sandbox Code Playgroud)

如果你想保持水平填充,你可以使用以下代码:

ListTile(
      contentPadding: EdgeInsets.symmetric(vertical: 0, horizontal: 10),
      dense: true,
      visualDensity: VisualDensity(horizontal: 0, vertical: -4),
      title: Text("hello"),
    )
Run Code Online (Sandbox Code Playgroud)