删除 Row 中两个 IconButton 之间的额外空间
Posted
技术标签:
【中文标题】删除 Row 中两个 IconButton 之间的额外空间【英文标题】:Remove extra space between two IconButton in ROw 【发布时间】:2020-05-28 22:04:32 【问题描述】:我想删除 Row 小部件中两个 IconButton 之间的一些额外空间 我尝试了更多,但仍然无法删除小部件之间的空间
Column(
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text("Home",
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 15,
color: Colors.black
)
),
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
IconButton(
icon: Icon(
Icons.edit,
color: Colors.black,
size: 20,
),
onPressed: ()
IntelUtility.navigateToScreen(
context, EditHomeAddressScreen()
);
,
),
IconButton(
icon: Icon(
Icons.delete,
color: Colors.black,
size: 20,
),
onPressed: () ,
),
],
),
],
),
],
),
请帮助解决这个问题,我遇到了麻烦:(
【问题讨论】:
我不认为它在两个 IconButtons 之间的额外空间 - 基本上两个图标都有一些填充,所以你必须删除那个“填充” - 确保从终端运行你的应用程序flutter run
并按 @987654325 @键
实际上根据材质概念没有空间,触摸按钮需要空间,以便用户不会难以触摸所需的按钮。尝试触摸离子,您会看到悬停效果。
【参考方案1】:
而不是使用 IconButton, 你可以像这样使用 CupertinoButton:
CupertinoButton(
minSize: double.minPositive,
padding: EdgeInsets.zero,
child: Icon(
Icons.delete,
color: Color.black,
size: 20
),
onPressed: () ,
)
【讨论】:
谢谢哥们太好了:)【参考方案2】:将参数 padding: EdgeInsets.all(0)
添加到 IconButton。
IconButton(
padding: EdgeInsets.all(0),
icon: Icon(
Icons.delete,
color: Colors.black,
size: 20,
),
onPressed: () ,
)
【讨论】:
【参考方案3】:你的答案是 BoxConstraints
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
IconButton(
constraints: BoxConstraints.tight(Size.fromWidth(30)),
icon: Icon(
Icons.edit,
color: Colors.black,
size: 20,
),
onPressed: ()
IntelUtility.navigateToScreen(
context, EditHomeAddressScreen()
);
,
),
IconButton(
constraints: BoxConstraints.tight(Size.fromWidth(30)),
icon: Icon(
Icons.delete,
color: Colors.black,
size: 20,
),
onPressed: () ,
),
],
),
你可以随意更改constraints: BoxConstraints.tight(Size.fromWidth(30)),
【讨论】:
兄弟我怎么用这个?它向我显示错误未定义约束!!! 约束目前处于测试阶段,我认为 stable 和 master 也包含约束以上是关于删除 Row 中两个 IconButton 之间的额外空间的主要内容,如果未能解决你的问题,请参考以下文章