我有从用户那里获取信息的表格。但是当我点击TextFormField并显示键盘时,它消失了。
这是我的代码:
class _AddInfoState extends State<AddInfo>{
static final GlobalKey<FormState> _key = new GlobalKey();
bool _validate = false;
String strTitle;
File fileImage;
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
body:new Container(
child: new Form(
key: _key,
autovalidate: _validate,
child: formUI(),
),
),
);
}
Widget formUI(){
return new ListView(
children: <Widget>[
//Title Field
new Container(
padding: EdgeInsets.fromLTRB(20.0, 10.0, 20.0, 0.0),
child:new TextFormField(
style: styleTextField,
keyboardType: TextInputType.text,
autofocus: true,
maxLength: 45,
decoration: InputDecoration(
hintText: 'Enter Title',
prefixIcon: Icon(
Icons.title,
size: 30.0,
color: blueColor,
)
),
validator: validateTitle,
onSaved: (String val) {
strTitle = val;
},
),
),
],
physics: new ClampingScrollPhysics(),
);
}
答案 0 :(得分:0)
将在Container
中包含TextFormField
的{{1}}包裹起来:
SizedBox
答案 1 :(得分:0)
根据我对视频的了解,由于您在表单中使用了可滚动的p = wikipedia.page('Category:Enzyme inhibitors')
parents = p.categories
,因此一旦键盘出现,列表就会向上滚动,从而消失。
尝试在脚手架中设置ListView
。这将使键盘显示为覆盖图,并且不会向上推内容。
示例:
resizeToAvoidBottomPadding: false
让我知道这是否有帮助!
答案 2 :(得分:0)
设置resizeToAvoidBottomPadding: false
,然后将Column
更改为ListView