【问题标题】:Remove space between Card删除卡之间的空间
【发布时间】:2020-11-19 18:14:37
【问题描述】:

如何去除Card之间的列间距?

@override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Sample"),
      ),
      body: Column(
        children: <Widget>[
          Card(
              child: Padding(
            padding: EdgeInsets.all(15),
            child: Text("Card 1"),
          )),
          Card(
            child: Padding(padding: EdgeInsets.all(15), child: Text("Card 2")),
          )
        ],
      ),
    );
  }

输出

【问题讨论】:

  • 由于padding 应用于卡片,您正在获得卡片之间的空间。
  • @TimilehinJegede 我已经删除了,空间还在。
  • Card 小部件有一个默认的margin。通过margin: EdgeInsets.zero@John Joe 将其设置为零
  • @TimilehinJegede 看起来不错!谢谢

标签: flutter dart space card


【解决方案1】:

默认情况下,card 小部件的默认 margin 设置为 4.0 logical pixels ,要消除空格,您可以根据自己的喜好调整默认 margin

我以您的小部件树为例添加了一个演示:

Column(
                children: <Widget>[
                  Card(
                    // set the margin to zero
                    margin: EdgeInsets.zero,
                    child: Text("Card 1"),
                  ),
                  Card(
                    // set the margin to zero
                    margin: EdgeInsets.zero,
                    child: Text(
                      "Card 2",
                    ),
                  )
                ],
              ),

【讨论】:

    【解决方案2】:

    Flutter 中的default margin 各边为 4.0 像素。更改此设置

    margin: EdgeInsets.zero 
    

    要了解有关margins 的更多信息,请访问here

    【讨论】:

      【解决方案3】:

      错误是因为您使用。 padding: EdgeInsets.all(15) 在您的卡片中。您只能在所需的侧面使用合金填充物。 在卡片中尝试添加margin:EdgeInsets.zero

       Card(
              margin: EdgeInsets.zero,
           ),
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-06-13
        • 1970-01-01
        • 1970-01-01
        • 2012-09-25
        • 2013-08-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多