如何在颤动中删除卡片的内部填充?
Posted
技术标签:
【中文标题】如何在颤动中删除卡片的内部填充?【英文标题】:How to remove a card's inner padding in flutter? 【发布时间】:2020-01-03 22:44:48 【问题描述】:我在卡片内放置了一个书签图标,但无法移除卡片的内部填充。我想让书签图标贴在卡片的边框上。我该怎么做?
我已将图标与“topRight”对齐,但无济于事。
【问题讨论】:
你能分享你尝试过的东西吗?我不明白你到底想做什么。 【参考方案1】:我只想留下一个完整的代码,去掉默认边距以使其清晰
Card(
margin: EdgeInsets.zero,
clipBehavior: Clip.antiAlias,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(8.0),
),
elevation: 4,
child: Image.network(
model.item.image,
width: 20,
height: 200,
alignment: Alignment.center,
fit: BoxFit.cover,
),
【讨论】:
【参考方案2】:您可以尝试将卡片的 margin 属性设置为 EdgeInsets.zero
【讨论】:
我不明白这一点。删除填充的问题和答案是应用零边距以及它如何删除内部填充!! 问题是关于填充而不是边距【参考方案3】:卡片小部件默认具有填充。如果这不是您想要的行为,您可以使用看起来像卡片的容器来实现您自己的小部件
【讨论】:
【参考方案4】:您可以将Card
包装成MediaQuery.removePadding
或MediaQuery.removeViewPadding
或MediaQuery.removeViewInsets
。它适用于所有具有默认填充/内部间距的小部件,您可以选择要删除的特定填充(top
、bottom
、right
或 left
):
MediaQuery.removeViewInsets(
removeRight: true,
removeLeft: true,
removeTop: true,
removeBottom: true,
context: context,
child: Card(...),
)
【讨论】:
【参考方案5】:卡片的默认边距是4,所以你必须将边距设置为零 边距:EdgeInsets.zero,
【讨论】:
以上是关于如何在颤动中删除卡片的内部填充?的主要内容,如果未能解决你的问题,请参考以下文章