Flutter 如何在TextFormField中添加填充?
我希望标题足以理解我想要什么,如何在TextFormField中添加填充和边距?更多信息请参见下图。谢谢Flutter 如何在TextFormField中添加填充?,flutter,dart,Flutter,Dart,我希望标题足以理解我想要什么,如何在TextFormField中添加填充和边距?更多信息请参见下图。谢谢 child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Image.asset('assets/images/logo.png'), TextFormField( dec
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset('assets/images/logo.png'),
TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your username'),
),
TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your password'),
),
],
)
child:Column(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
Image.asset('assets/images/logo.png'),
TextFormField(
装饰:输入装饰(
fillColor:Colors.white,
是的,
边框:新大纲输入边框(
borderRadius:const borderRadius.all(
圆形常数半径(10.0),
),
),
labelText:“输入您的用户名”),
),
TextFormField(
装饰:输入装饰(
fillColor:Colors.white,
是的,
边框:新大纲输入边框(
borderRadius:const borderRadius.all(
圆形常数半径(10.0),
),
),
labelText:“输入密码”),
),
],
)
您可以添加SizedBox
TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your username'),
),
SizedBox(height: 10),
TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your password'),
),
您可以在textformfield之间插入sizedbox,如:-
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset('assets/images/logo.png'),
TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your username'),
),
SizedBox(height:30), // will add 30 pixels gap in between the fields
TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your password'),
),
],
)
child:Column(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
Image.asset('assets/images/logo.png'),
TextFormField(
装饰:输入装饰(
fillColor:Colors.white,
是的,
边框:新大纲输入边框(
borderRadius:const borderRadius.all(
圆形常数半径(10.0),
),
),
labelText:“输入您的用户名”),
),
SizedBox(高度:30),//将在字段之间添加30个像素的间距
TextFormField(
装饰:输入装饰(
fillColor:Colors.white,
是的,
边框:新大纲输入边框(
borderRadius:const borderRadius.all(
圆形常数半径(10.0),
),
),
labelText:“输入密码”),
),
],
)
请将TextFormField包装在容器中,并根据您的用户界面将边距设置为top、left、right、bottom。请检查这个,如果这个是正确的,请告诉我
Container(
margin: EdgeInsets.only(top: 10,left: 0,right: 0,bottom: 0),
child: TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your password'),
),
),
要应用水平填充,只需在
列的上方添加填充小部件即可:
Padding(
padding: EdgeInsets.symmetric(horizontal: 16.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Image.asset('assets/images/logo.png'),
// your text fields
],
...
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset('assets/images/logo.png'),
TextFormField1(...),
SizedBox(height: 24.0),
TextFormField2(...),
SizedBox(height: 24.0),
],
)
要添加垂直填充,请使用SizedBox
内列
:
Padding(
padding: EdgeInsets.symmetric(horizontal: 16.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Image.asset('assets/images/logo.png'),
// your text fields
],
...
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset('assets/images/logo.png'),
TextFormField1(...),
SizedBox(height: 24.0),
TextFormField2(...),
SizedBox(height: 24.0),
],
)
child:Column(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
Image.asset('assets/images/logo.png'),
TextFormField1(…),
尺寸箱(高度:24.0),
TextFormField2(…),
尺寸箱(高度:24.0),
],
)
您可以使用几种方法增加与它们的距离:
SizedBox()
Padding()
容器(边距,子项:…)
1-SizedBox()
:
3-Container()
InputDecoration采用contentPadding值。直接使用即可。如果需要填充和边距,可以用容器包装并添加边距,为什么不直接使用填充小部件?
Container(
margin: EdgeInsets.only(top: 15),
child: TextFormField(
decoration: InputDecoration(
fillColor: Colors.white,
filled: true,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),
labelText: 'Enter your password'),
),
),