[英]SingleChildScrollView , Problem with spaces on the child Column
MainAxisAlignment.spaceEvenly
再次工作,您需要将您的内部包装为ConstrainedBox
,如下所示:SingleChildScrollView(
child: ConstrainedBox(
constraints: BoxConstraints(
maxHeight: MediaQuery.of(context).size.height,
),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Text('data'),
Text('HelloWorld'),
],
),
),
),
SingleChildScrollView
使用ScrollController
并像这样动画到列表的末尾: controller.animateTo(
controller.position.maxScrollExtent,
duration: const Duration(milliseconds: 500),
curve: Curves.easeOut,
);
SizedBox
用于空格,一个小提示:记得在它之前设置const
以使您的应用程序性能更高,因为这样 flutter 不会在每次重建小部件时重建 sizedBox 小部件希望你觉得这对你有帮助 =D
通常您应该使用ListView
,这应该可以解决键盘隐藏表单字段的问题。
关于SizedBox
和你的小部件分布的问题,那是因为通常当你创建一个列时,它使用父级的整个高度,但在SingleChildScrollView
的情况下,它没有给你一个大小,因此专栏不知道如何分配您的孩子。
最后,我看到很多开发者使用SizedBox
来创建间距,所以我认为使用它并没有什么问题。 您还可以创建一个ListView.separated
( 官方文档),它将添加一个相同的 Widget(您提供的)作为分隔符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.