颤振 - TextFormField上的键盘

时间:2018-03-10 08:46:06

标签: android android-edittext dart flutter

我在应用中有一些登录页面。但是,当我专注于TextFormField时,键盘覆盖字段并且看不到任何内容。作为Android开发者,

我通常会通过向清单添加android:windowSoftInputMode="adjustResize|stateHidden来修复它。

如何在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)),
              ))),
        ],
      ),
}

2 个答案:

答案 0 :(得分:2)

 //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()
   ),
 );
}

答案 1 :(得分:0)

可以找到完整详细的解决方案here