我正在制作一个登录屏幕,从中学到的知识,我需要使用 SingleChildScrollView 来防止TextFields聚焦时出现“黄色条纹”问题。
每当我添加 SingleChildScrollView 时,由于MainAxisAlignment不再起作用,也许会丢失任何类型的小部件对齐:
的效果如何SignleChildScrollView :Screenshot with SingleChildScrollView
它应该是什么样的:Screenshot without SingleChildScrollView
我已经尝试过任何方法,但无法解决。
body: SafeArea(
child: SingleChildScrollView(
child: Column(
mainAxisAlignment: MainAxisAlignment.end,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Container(
padding: EdgeInsets.only(bottom: 50),
child: TypeScript(textTypeScript: tsLogin),
),
Container(
width: MediaQuery.of(context).size.width / 1.2,
child: Column(
children: [
emailField,
SizedBox(height: 20),
passwordField,
Container(
height: 80,
padding: EdgeInsets.only(top: 10),
alignment: Alignment.topRight,
//child: passwordRecovery,
),
Container(
child: loginButton,
),
SizedBox(
height: 52,
width: MediaQuery.of(context).size.height; / 2,
child: orStripe,
),
Container(
padding: EdgeInsets.only(bottom: 10),
child: signButton,
),
],
),
),
],
),
),
),
);
}
}
最佳答案
尝试用以下内容替换SingleChildscrollview:
CustomScrollView(
slivers[
SliverFillRemaining(
hasScrollBody: false,
child: YourChildWidget(),
),
),
)
关于flutter - 如何使用ScrollView而不弄乱实际布局的顺序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/64649584/