我有这样的用户界面: ListView 仍然出现,但最后一个元素不可见,除非我向下滚动并按住它。这是为什么?我希望滚动时这些项目完全可见。我使用堆栈是因为列表覆盖在图像的顶部,这就是我这样做的原因。帮我!
此代码:
SafeArea(
child: Stack(
children: [
Image.asset(
AppImages.backgroundTechnicalSupport,
fit: BoxFit.fill,
),
Positioned(
top: 20,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: PaddingConstants.h20R,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
LocaleKeys.technicalSupport_title.tr(),
maxLines: 2,
style: TextStyle(
fontSize: 24.zsp(context),
fontWeight: FontWeight.w600,
color: Colors.white,
),
),
],
),
),
],
),
),
Positioned(
top: 280.wh,
child: Container(
width: MediaQuery.of(context).size.width,
decoration: BoxDecoration(
borderRadius: BorderRadiusConstants.tl15tr15,
color: ThemeHelper.backgroundRealm(context),
),
padding: PaddingConstants.h20v10R,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
14.wVerticalSpace,
Text(
LocaleKeys.technicalSupport_supportType.tr(),
style: TextStyle(
fontSize: 20.zsp(context),
fontWeight: FontWeight.w600,
color: ThemeHelper.black(context),
),
),
16.wVerticalSpace,
Container(
constraints: BoxConstraints(
maxHeight:
MediaQuery.of(context).size.height - 260.wh,
),
child: ListView.separated(
shrinkWrap: true,
itemBuilder: (_, index) {
return Container(
padding: PaddingConstants.h20v10R,
decoration: BoxDecoration(
border: Border.all(
color: ThemeHelper
.borderDateMeetingRoom(context),
),
borderRadius:
BorderRadiusConstants.c15wr,
),
child: Row(
children: [
16.wHorizontalSpace,
Expanded(
child: Padding(
padding: PaddingConstants.v20R,
child: Text(
'Cai dat tai khoan',
style: TextStyle(
fontWeight: FontWeight.w600,
fontSize: 18.zsp(context),
color: ThemeHelper
.primaryBlueColor(
context),
),
),
),
),
SvgPicture.asset(
AppImages.arrowRight,
colorFilter:
ThemeHelper.primaryBlueColor(
context)
.toSvgColor,
),
],
),
);
},
separatorBuilder: (_, __) =>
15.wVerticalSpace,
itemCount: 6,
)
),
],
),
),
),
],
),
)
我英语不好,抱歉
只需用 padding 包裹 ListView 即可。
Stack(
children: [
Image.asset(
AppImages.backgroundTechnicalSupport,
fit: BoxFit.fill,
),
Positioned(
top: 20,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: PaddingConstants.h20R,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
LocaleKeys.technicalSupport_title.tr(),
maxLines: 2,
style: TextStyle(
fontSize: 24.zsp(context),
fontWeight: FontWeight.w600,
color: Colors.white,
),
),
],
),
),
],
),
),
Positioned(
top: 280.wh,
child: Container(
width: MediaQuery.of(context).size.width,
decoration: BoxDecoration(
borderRadius: BorderRadiusConstants.tl15tr15,
color: ThemeHelper.backgroundRealm(context),
),
padding: PaddingConstants.h20v10R,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
14.wVerticalSpace,
Text(
LocaleKeys.technicalSupport_supportType.tr(),
style: TextStyle(
fontSize: 20.zsp(context),
fontWeight: FontWeight.w600,
color: ThemeHelper.black(context),
),
),
//16.wVerticalSpace,
Container(
constraints: BoxConstraints(
maxHeight: MediaQuery.of(context).size.height - 260.wh,
),
child: Padding(
padding: PaddingConstants.h0v16R,
padding: const EdgeInsets.all(8.0),
child: ListView.separated(
shrinkWrap: true,
itemBuilder: (_, index) {
return Container(
padding: PaddingConstants.h20v10R,
decoration: BoxDecoration(
border: Border.all(
color: ThemeHelper.borderDateMeetingRoom(
context),
),
borderRadius: BorderRadiusConstants.c15wr,
),
child: Row(
children: [
16.wHorizontalSpace,
Expanded(
child: Padding(
padding: PaddingConstants.v20R,
child: Text(
'Cai dat tai khoan',
style: TextStyle(
fontWeight: FontWeight.w600,
fontSize: 18.zsp(context),
color: ThemeHelper.primaryBlueColor(
context),
),
),
),
),
SvgPicture.asset(
AppImages.arrowRight,
colorFilter:
ThemeHelper.primaryBlueColor(context)
.toSvgColor,
),
],
),
);
},
separatorBuilder: (_, __) => 15.wVerticalSpace,
itemCount: 6,
),
)),
],
),
),
),
],
)