dart - 键盘打开时 Flutter 中的溢出错误
问题描述
我正在设计一个登录页面,当我单击它打开键盘的任何文本表单字段并通过像这样的溢出警告时溢出,请参见附图。我还想要一个凸起的按钮图标应该在按钮的右侧。
Widget build(BuildContext context) {
return Container(
child: Scaffold(
body: Stack(
fit: StackFit.expand,
children: <Widget>[
Container(
decoration: BoxDecoration(
image: new DecorationImage(
image: new AssetImage('assets/login_page_bg_1.jpg'),
fit: BoxFit.cover,
colorFilter: new ColorFilter.mode(
Colors.black.withOpacity(0.55), BlendMode.dstATop))),
),
Column(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Expanded(
flex: 1,
child: Container(
margin: new EdgeInsets.only(top: 42.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset('assets/logo.png',
width: 250.0, height: 200.21),
],
),
),
),
Expanded(
flex: 2,
child: Container(
margin: new EdgeInsets.only(bottom: 40.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
//form filed goes here
Text('Login As User',
textAlign: TextAlign.center,
style: TextStyle(
fontWeight: FontWeight.bold, fontSize: 35.0)),
TextFormField(
keyboardType: TextInputType.emailAddress,
decoration: InputDecoration(
hintText: 'you@example.com',
labelText: 'Email Address',
),
new Container(
// width: MediaQuery.of(context).size.width,
child: RaisedButton.icon(
color: Color.fromARGB(251, 188, 74, 1),
label: Text('LOGIN'),
icon: Icon(Icons.send,
size: 10.0, color: Colors.black),
onPressed: () {
this.submit();
}, ),)],),),)],)],),),);
解决方案
将以下属性设置为false
Scaffold(
resizeToAvoidBottomInset: false,
...
)
如果您遇到溢出错误的问题,请使用SingleChildScrollView
它。
Scaffold(
resizeToAvoidBottomInset: false, // set it to false
body: SingleChildScrollView(child: YourBody()),
)
PS:如果你喜欢在键盘打开时滚动你的小部件,你可以看看这个答案
推荐阅读
- arrays - 为什么当它不满足条件时它会在我的对象中打印一个值?
- web-services - 使用 .NET Core 将来自第三方 API 的数据集成到本地数据库
- python - 试图在 python 中使用 selenium 从 web 上抓取表格。AttributeError:“NoneType”对象没有属性“find_all”
- tcl - TCL 是否包含 get_bits 和 set_bits 类型的内置函数?
- node.js - npm 无法安装 @bit/formidablelabs.react-animations.rotate-in-up-left
- php - Google Logging API v2 身份验证问题
- android - onCompeletionListener() 不是每次都调用并且随机播放和重复不能正常工作
- javascript - 浏览器控制台中的 Jest 单元测试模块导出错误
- c - 如果两个任务尝试同时访问结构的不同部分(在 c 中)会发生什么?
- nginx - nginx 将 http 重定向到 https 域