Flutter - keyboard over TextFormField
3,513
//Add this line "resizeToAvoidBottomInset: true," to your Scaffold and put your main container in ScrollView.
@override
Widget build(BuildContext context) {
return Scaffold(
resizeToAvoidBottomInset: true,
key: _scaffoldKey,
backgroundColor: Colors.white,
body: SingleChildScrollView(
child: Container()
),
);
}
Author by
Stepan
Updated on December 04, 2022Comments
-
Stepan over 1 year
I have a some kind of login page in an app. However, when I focus to TextFormField, keyboard overlay the fields and nothing is seen. As Android dev,
I normally fix it by adding
android:windowSoftInputMode="adjustResize|stateHidden
to manifest.How to solve it in Flutter?
CODE:
@override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.white, body: ListView( children: <Widget>[ Center(child: Image(image: AssetImage("images/uhk.jpg"))), Form( key: formKey, child: Padding( padding: EdgeInsets.only(top: 20.0, left: 30.0, right: 30.0), child: Column( children: <Widget>[ TextFormField( decoration: new InputDecoration(labelText: "Přihlašovací jméno"), maxLines: 1, keyboardType: TextInputType.emailAddress, onSaved: (String value) => ""), TextFormField( decoration: new InputDecoration(labelText: "Heslo"), maxLines: 1, obscureText: true, onSaved: (String value) => ""), ], ), ), ), Padding( padding: EdgeInsets.only(top: 50.0, left: 30.0, right: 30.0), child: RaisedButton( child: Text("Přihlásit se", style: TextStyle( fontSize: 16.0, color: Colors.white, height: 3.0)), color: Colors.lightBlue, onPressed: () => "")), Padding( padding: EdgeInsets.only( top: 20.0, ), child: Center( child: FlatButton( onPressed: () => "", child: Text("Vytvořit účet", style: TextStyle(fontSize: 14.0, color: Colors.grey)), ))), ], ), }