如何连续间隔和调整两个项目的大小?
How to SpaceEvenly and Resize two items in a Row?
我正在尝试 spaceevenly
Icon()
和 AutoSizeText()
Row()
。
当数量如您在所附图像中看到的那样长时,它会按预期呈现,但当数量为零或非常短时,AutoSizeText()
居中,但这会导致与边缘的距离相同维护时间更长。居中导致了额外的距离。我不知道如何解决这个问题。
编辑。如果不清楚,我指的是粉色购物袋图标和“Riepilogo Settimanale”部分中显示的金额。如果您查看餐厅图标及其数量,您会注意到它们没有居中,它们更靠近左边缘。
Container(
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(20),
),
width: size.width * 0.3,
height: size.height,
// height: size.height * 0.055,
child: Row(
children: [
Spacer(),
Expanded(
flex: 3,
child: Container(
child: LayoutBuilder(
builder: (context, constraint) {
return Icon(
icona,
color: colore,
size: constraint.biggest.width * 1,
);
},
),
),
),
Spacer(),
Expanded(
flex: 6,
child: Center(
child: AutoSizeText(
importo,
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.bold,
color: colore,
),
maxLines: 1,
),
),
),
Spacer(),
],
),
)
如果我没理解错的话,你想右对齐文本,而不是居中。
为此,请考虑在图标和文本之间使用一个 Spacer()
。外部间距(边距和填充)可以使用 Padding
小部件代替。
我正在尝试 spaceevenly
Icon()
和 AutoSizeText()
Row()
。
当数量如您在所附图像中看到的那样长时,它会按预期呈现,但当数量为零或非常短时,AutoSizeText()
居中,但这会导致与边缘的距离相同维护时间更长。居中导致了额外的距离。我不知道如何解决这个问题。
编辑。如果不清楚,我指的是粉色购物袋图标和“Riepilogo Settimanale”部分中显示的金额。如果您查看餐厅图标及其数量,您会注意到它们没有居中,它们更靠近左边缘。
Container(
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(20),
),
width: size.width * 0.3,
height: size.height,
// height: size.height * 0.055,
child: Row(
children: [
Spacer(),
Expanded(
flex: 3,
child: Container(
child: LayoutBuilder(
builder: (context, constraint) {
return Icon(
icona,
color: colore,
size: constraint.biggest.width * 1,
);
},
),
),
),
Spacer(),
Expanded(
flex: 6,
child: Center(
child: AutoSizeText(
importo,
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.bold,
color: colore,
),
maxLines: 1,
),
),
),
Spacer(),
],
),
)
如果我没理解错的话,你想右对齐文本,而不是居中。
为此,请考虑在图标和文本之间使用一个 Spacer()
。外部间距(边距和填充)可以使用 Padding
小部件代替。