[英]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.