gpt4 book ai didi

flutter - 将 ListView 的子项与顶部和底部对齐

转载 作者:IT王子 更新时间:2023-10-29 06:58:08 26 4
gpt4 key购买 nike

长话短说

是否可以像 Column spaceBetween 对齐那样对齐 ListView 的 子元素?

就像这个截图:

enter image description here

我试图解决的问题:

一开始我有一个 Column 小部件和 2 个 child 。 列的 对齐设置为spaceBetween。这正是我想要的,一个小部件在顶部,一个在底部。但是当我单击输入以添加凭据时,键盘导致了此 GitHub issue 中描述的溢出问题。 .因此,为了修复它,我将 Column 替换为 ListView。但现在我的 child 小部件卡在屏幕顶部。

我的完整 LoginScreen 代码:

import 'package:flutter/material.dart';

import '../widgets/button.dart';
import '../widgets/input.dart';
import '../widgets/logo.dart';

class LoginScreen2 extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
Background(),
Wrapper(),
],
),
);
}
}

class Background extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.bottomCenter,
end: Alignment.topCenter,
colors: [
Color(0xfff6f6f6),
Colors.white,
],
),
),
);
}
}

class Wrapper extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ListView(
children: <Widget>[
Logo(LogoColor.dummy_black),
Align(
alignment: Alignment.bottomCenter,
child: Padding(
padding: const EdgeInsets.all(20),
child: BottomPart(),
),
),
],
);
}
}

class BottomPart extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Input('User name'),
Input('Password'),
Button(
'Log in',
onPressed,
),
],
);
}

void onPressed() {}
}

最佳答案

你可以使用 ListView 的属性 reverse

reverse: true,

然后更改 ListView 子级的顺序。

关于flutter - 将 ListView 的子项与顶部和底部对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54957026/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com