User interface 键盘在颤振中覆盖文本字段
我的问题是,每当我想在文本字段中键入内容时,键盘就会覆盖它。 我以为只要键盘一出现屏幕就会向上滚动。有什么想法吗? 我尝试将resizeToAvoidBottomInsert设置为true,并将所有内容包装到SingleChildScrollView()中 这是我的密码:User interface 键盘在颤振中覆盖文本字段,user-interface,flutter,dart,scroll,keyboard,User Interface,Flutter,Dart,Scroll,Keyboard,我的问题是,每当我想在文本字段中键入内容时,键盘就会覆盖它。 我以为只要键盘一出现屏幕就会向上滚动。有什么想法吗? 我尝试将resizeToAvoidBottomInsert设置为true,并将所有内容包装到SingleChildScrollView()中 这是我的密码: class PhoneNrInput extends StatelessWidget { final TextEditingController phoneNrController = TextEditingContr
class PhoneNrInput extends StatelessWidget {
final TextEditingController phoneNrController = TextEditingController();
final FocusNode phoneNrFocusNode = FocusNode();
@override
Widget build(BuildContext context) {
return Scaffold(
resizeToAvoidBottomInset: true,
body: Column(
mainAxisAlignment: MainAxisAlignment.end,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
height: 200,
width: double.infinity,
decoration: BoxDecoration(
boxShadow: [BoxShadow(color: Colors.black, blurRadius: 5)],
color: Color(0xff05111f),
borderRadius: BorderRadius.only(
topLeft: Radius.circular(50),
topRight: Radius.circular(50),
),
),
child: Padding(
padding: EdgeInsets.all(30),
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
SizedBox(
width: 15,
),
Flexible(
fit: FlexFit.tight,
//Textfield
child: TextField(
focusNode: phoneNrFocusNode,
autofocus: false,
autocorrect: false,
keyboardType: TextInputType.phone,
decoration: InputDecoration(
filled: true,
hintStyle: TextStyle(
color: Colors.black,
),
border: UnderlineInputBorder(
borderSide: BorderSide(color: Colors.white),
borderRadius: BorderRadius.circular(25),
),
fillColor: Colors.white,
hintText: "Telefonnummer",
),
controller: phoneNrController,
),
),
],
),
SizedBox(
height: 25,
),
ButtonTheme(
height: 40,
child: RaisedButton(
onPressed: () {},
color: Colors.white,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(25),
),
child: Text("Registrieren"),
),
),
],
),
),
),
],
),
);
}
}
class PhoneNrInput扩展了无状态小部件{
final TextEditingController phoneNrController=TextEditingController();
final FocusNode phoneNrFocusNode=FocusNode();
@凌驾
小部件构建(构建上下文){
返回脚手架(
resizeToAvoidBottomInset:true,
正文:专栏(
mainAxisAlignment:mainAxisAlignment.end,
crossAxisAlignment:crossAxisAlignment.center,
儿童:[
容器(
身高:200,
宽度:double.infinity,
装饰:盒子装饰(
boxShadow:[boxShadow(颜色:Colors.black,模糊半径:5)],
颜色:颜色(0xff05111f),
borderRadius:仅限borderRadius(
左上:半径。圆形(50),
右上角:半径。圆形(50),
),
),
孩子:填充(
填充:所有(30),
子:列(
crossAxisAlignment:crossAxisAlignment.center,
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
划船(
crossAxisAlignment:crossAxisAlignment.center,
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
大小盒子(
宽度:15,
),
灵活的(
适合:FlexFit.tight,
//文本字段
孩子:TextField(
focusNode:phoneNrFocusNode,
自动对焦:错误,
自动更正:错误,
键盘类型:TextInputType.phone,
装饰:输入装饰(
是的,
hintStyle:TextStyle(
颜色:颜色,黑色,
),
边框:下划线输入边框(
borderSide:borderSide(颜色:Colors.white),
边界半径:边界半径。圆形(25),
),
fillColor:Colors.white,
hintText:“Telefonnummer”,
),
控制器:电话控制器,
),
),
],
),
大小盒子(
身高:25,
),
钮扣(
身高:40,
孩子:升起按钮(
按下:(){},
颜色:颜色,白色,
形状:圆形矩形边框(
边界半径:边界半径。圆形(25),
),
子项:文本(“注册表项”),
),
),
],
),
),
),
],
),
);
}
}
如果其他人有相同的问题:
我在android/app/src/main/res/values文件夹的styles.xml文件的一节中包含了以下行:
<item name="android:windowFullscreen">true</item>
true
这导致了问题。如果其他人也有同样的问题: 我在android/app/src/main/res/values文件夹的styles.xml文件的一节中包含了以下行:
<item name="android:windowFullscreen">true</item>
true
这导致了问题。请检查此已回答的问题此问题是否回答了您的问题@很遗憾,这对我不起作用。无论如何,谢谢你。我想了解为什么我尝试过的方法一开始就不起作用。请检查这个回答的问题这个回答你的问题吗@很遗憾,这对我不起作用。无论如何,谢谢你。我想理解为什么我尝试的方法一开始就不起作用。