- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我是 Flutter 的新手,所以我通过制作一个简单的表单来训练自己。当我在 iPhone 上调试时,我意识到虚拟键盘触发了一个错误:“A RenderFlex 在底部溢出了 29 个像素”
。我通过将 Container 包装在 SingleChildScrollView
中解决了这个问题。
现在的问题是我的专栏内容不再居中。我不知道为什么......
这是我的代码以帮助您理解:
List<Widget> _buildBody() {
var listWidget = List<Widget>();
SingleChildScrollView singleChild = SingleChildScrollView(
padding: EdgeInsets.only(top: 1.0),
child: Container(
alignment: Alignment.center,
margin: EdgeInsets.all(30.0),
padding: EdgeInsets.all(10.0),
child: Form(
key: _formKey,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Container(
margin: EdgeInsets.fromLTRB(0.0, 0.0, 0.0, 50.0),
child: Image.asset(
'assets/github.png',
width: 100.0,
height: 100.0,
),
),
Container(
margin: EdgeInsets.only(bottom: 10.0),
child: TextFormField(
controller: _usernameController,
autofocus: true,
decoration: InputDecoration(
hintText: 'Username',
suffixIcon: Icon(Icons.account_circle)))),
Container(
child: TextFormField(
controller: _passwordController,
obscureText: true,
decoration: InputDecoration(
hintText: 'Password', suffixIcon: Icon(Icons.vpn_key)),
),
),
Container(
margin: EdgeInsets.only(top: 10.0),
child: RaisedButton(
splashColor: Colors.greenAccent,
color: Colors.blue,
child: Text('Submit'),
onPressed: () {
_handleSubmit();
},
),
)
],
),
),
));
listWidget.add(singleChild);
if (_requesting) {
var modal = new Stack(
children: [
new Opacity(
opacity: 0.3,
child: const ModalBarrier(dismissible: false, color: Colors.grey),
),
new Center(
child: new CircularProgressIndicator(),
),
],
);
listWidget.add(modal);
}
return listWidget;
}
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Github Login'),
),
body: Stack(
children: _buildBody(),
));
}
我将属性“mainAxisAlignment: MainAxisAlignment.center”添加到我的列中。在我将它包装到 SingleChildScrollView 之前,它运行良好。
如果有人可以帮助我并解释为什么它不再起作用,我将不胜感激:)
最佳答案
ArtiomLK在评论中提出了一个对我有帮助的解决方案:
将 SingleChildScrollView
包装在 Center
中。小部件树是:
Center(child: SingleChildScrollView(child: Column(...)))
其他人都没有帮助。
关于flutter - 在 SingleChildScrollView 内垂直居中小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53398476/
我有一个父 SCS View (SingleChildScrollView)和一个子 SCS View 。在子 SCS View 中有一个数据表,数据表从屏幕底部的四分之一处开始。 现在,当用户滚动到
你们如何解决以下 Flutter 布局? 我有一个屏幕,我必须在其中显示,如图所示:一个 Logo + 3 个 TextFormFields + 2 个按钮 + 一个容器。 问题: 我需要将所有小部件
如何滚动 SingleChildScrollView以编程方式? 在长表单上,需要自动滚动到需要的输入字段。 最佳答案 有多种解决方案: 使用 ScrollController : 分配给 contr
我正在尝试归档类似于图像的布局,其中有一个顶部固定区域(红色)和一个可滚动区域(黄色),顶部有一些文本字段(文本 1、文本 2)和一个终端元素在可滚动区域的底部 (* Bottom Text)。我试着
我有一个 SingleChildScrollView,里面有一个 Container。我想要实现的是 Container 的 高度应该是一个完整的视口(viewport)高度。 我的代码: class
我在 flutter 方面遇到问题。我的屏幕没有滚动。我有几个组件使用 Column 功能将它们放在一个下方,但简单的滚动功能不起作用。 这是我的代码 Widget buildContent() {
我试图在用 singlechildscrollview 包裹的列中使用间隔器,它给了我一个错误。 RenderFlex children have non-zero flex but incoming
我尝试使用 ReorderableListView内SingleChildScrollView ,但我收到一个错误: I/flutter ( 9049): ══╡ EXCEPTION CAUGHT B
我不知道如何在 Flutter 中进行这种布局。我想要实现的是: 我有一列,包含一个固定高度的子项(标题文本小部件)和两个扩展小部件。我正在使用扩展,因为我希望每个人共享剩余屏幕的一半。 当方向更改为
是否可以检查 SingleChildScrollView 是否适合屏幕以便不需要滚动? 我想根据这些信息实现不同的行为。 提前感谢大家。 最佳答案 我遇到了同样的问题,并找到了解决方法。以下是我的制作
在我的 flutter 应用程序中,我需要一个布局,如果所有小部件对于屏幕而言都太长,我可以在其中滚动,因此我添加了一个 SingleChildScrollView。但是,如果小部件较小并且留有很多空
在我的 flutter 应用程序中,我需要一个布局,如果所有小部件对于屏幕而言都太长,我可以在其中滚动,因此我添加了一个 SingleChildScrollView。但是,如果小部件较小并且留有很多空
我有一个由列组成的布局,其中一个元素是一行(以便它占据屏幕的整个宽度)。在该行中,我有一个换行符,其内容相当大,我想将其放入 SingleChildScrollView 中。 @override
我正在尝试创建一个其中包含一列的 SingleChildScrollView,我希望在屏幕的最底部有一个按钮。为此,我尝试使用带有 SingleChildScrollView 和 FlatButton
这是我正在开发的登录页面的屏幕: https://ibb.co/X22g4rc 当键盘出现时,它告诉我有溢出,这似乎是正常的: https://ibb.co/mzVLJ4f 在网络上进行一些研究后,我
@override Widget build(BuildContext context) { return Scaffold( backgroundColor: Color(0xff003859)
我的多行 TextField 需要一个滚动位置指示器,它被包裹在 SingleChildScrollView 中。 文本字段中的文本比可见的多,我看不出隐藏了一些文本及其隐藏位置(顶部或底部) 这是
我正在开发一个应用程序,并正在关注此 link 中的示例并遇到了一个问题,它说底部溢出 xx 像素,如下所示: 现在,我以前遇到过这个问题,通过添加 SingleChildScrollView 解决了
我正在使用 SingleChildScrollView,当点击其中的 FormTextField 时,键盘出现并且 ScrollView 向上滚动。关闭键盘后,我仍然可以手动滚动 Scrollview
每次我打开键盘时,图像都会根据键盘上方的屏幕尺寸进行缩放,而不是在设备的整个屏幕上。我的代码如下,请问如何解决?因为如果我不放置 SingleChieldScrollView,它将显示黄色像素警报横幅
我是一名优秀的程序员,十分优秀!