在扑动中,如何设置列内行项目之间的间距?
In flutter, how to set spacing between row items inside of a column?
我创建了许多包含在 Column
内部的 Row
项目,并希望在每行项目之间留出间距。我尝试设置 mainAxisAlignment
of Column
。但是每个 Row
项之间没有任何变化。如何更改或我需要为此使用哪个小部件?
Column(
children: [
Row(
children: [
Flexible(
flex: 2,
fit: FlexFit.tight,
child: Container(child: kTextFieldLabelText('Name:')),
),
Flexible(
flex: 6,
fit: FlexFit.loose,
child: Container(
//width: 100,
child: TextFormField(
decoration:
kTextFormFieldsDecoration('Enter your name'),
maxLines: 1,
),
),
),
],
),
Row(
children: [
Flexible(
flex: 2,
fit: FlexFit.tight,
child: Container(child: kTextFieldLabelText('Name:')),
),
Flexible(
flex: 6,
fit: FlexFit.loose,
child: Container(
//width: 100,
child: TextFormField(
decoration:
kTextFormFieldsDecoration('Enter your name'),
maxLines: 1,
),
),
),
],
),
Row(
children: [
Flexible(
flex: 2,
fit: FlexFit.tight,
child: Container(child: kTextFieldLabelText('Name:')),
),
Flexible(
flex: 6,
fit: FlexFit.loose,
child: Container(
//width: 100,
child: TextFormField(
decoration:
kTextFormFieldsDecoration('Enter your name'),
maxLines: 1,
),
),
),
],
),
],
),
你也可以使用
Spacer(), or Spacer(flex: 1),
或使用尺寸框确定您喜欢的高度和宽度
SizedBox(height: // put here,),
而且大小的盒子还有其他东西,比如
SizedBox.expand(),
两种方式都可以玩
如果 Row
的 children
是固定大小,那么您可以对 Row
使用 MainAxisAlignment
以便相应地排列它们。
否则,如果您的 widgets
是 Flexible
,那么您可能需要在两个小部件之间添加 SizedBox
和所需的 width
。
我创建了许多包含在 Column
内部的 Row
项目,并希望在每行项目之间留出间距。我尝试设置 mainAxisAlignment
of Column
。但是每个 Row
项之间没有任何变化。如何更改或我需要为此使用哪个小部件?
Column(
children: [
Row(
children: [
Flexible(
flex: 2,
fit: FlexFit.tight,
child: Container(child: kTextFieldLabelText('Name:')),
),
Flexible(
flex: 6,
fit: FlexFit.loose,
child: Container(
//width: 100,
child: TextFormField(
decoration:
kTextFormFieldsDecoration('Enter your name'),
maxLines: 1,
),
),
),
],
),
Row(
children: [
Flexible(
flex: 2,
fit: FlexFit.tight,
child: Container(child: kTextFieldLabelText('Name:')),
),
Flexible(
flex: 6,
fit: FlexFit.loose,
child: Container(
//width: 100,
child: TextFormField(
decoration:
kTextFormFieldsDecoration('Enter your name'),
maxLines: 1,
),
),
),
],
),
Row(
children: [
Flexible(
flex: 2,
fit: FlexFit.tight,
child: Container(child: kTextFieldLabelText('Name:')),
),
Flexible(
flex: 6,
fit: FlexFit.loose,
child: Container(
//width: 100,
child: TextFormField(
decoration:
kTextFormFieldsDecoration('Enter your name'),
maxLines: 1,
),
),
),
],
),
],
),
你也可以使用
Spacer(), or Spacer(flex: 1),
或使用尺寸框确定您喜欢的高度和宽度
SizedBox(height: // put here,),
而且大小的盒子还有其他东西,比如
SizedBox.expand(),
两种方式都可以玩
如果 Row
的 children
是固定大小,那么您可以对 Row
使用 MainAxisAlignment
以便相应地排列它们。
否则,如果您的 widgets
是 Flexible
,那么您可能需要在两个小部件之间添加 SizedBox
和所需的 width
。