我的布局中有两个TextField
,我担心显示键盘时所有项目的大小都会改变。
带有和不带有键盘的布局如下图所示。
显示键盘时,所有小部件(TextField
Text
和Button
)的大小都会调整到顶部。
因为我的小部件都包裹在SingleChildScrollView
中,所以即使屏幕很小,我们也可以滚动查看所有项目,因此没有问题。
Widget _buildCamposLogin() {
return Form(
key: _formKey,
child: Container(
margin: EdgeInsets.only(bottom: 50.0, left: 30.0, right: 30.0),
child: SingleChildScrollView(
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
_buildLoginText(),
_buildCampoCPF(),
_buildCampoSenha(),
_buildSubmitButton(),
_buildCadastroText(),
],
),
),
),
);
}
所以,问题是我觉得将所有内容移到顶部很奇怪,最好不要只移动已聚焦的TextField
以及位于此TextField
上方的其他东西,而不是移动集中在TextField
上方和下方的所有内容。
如果您认为这样更好,将上方的TextField
和窗口小部件移到顶部的解决方案是什么?
为什么我的问题没有重复
在标记的问题中,那个家伙问如何防止键盘移动小部件。答案说要在resizeToAvoidBottomInset: false
中设置Scaffold
。这与我要的完全不同。
我确实希望键盘将小部件移动到顶部。问题在于它移动了我所有的小部件,底部的2个TextField
和RaisedButton
和2个Text
。我只想移动显示为以下示例的TextField
。
请注意以下两张图片与我已经上传的其他图片之间的区别。