大佬教程收集整理的这篇文章主要介绍了如何与动态容器的顶部(开始)和底部(结束)对齐?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试以行拆分两次的方式布局我的容器,其中包含两个单独的列。
在这些单独的列中,我希望能够在容器底部以及用 Container
扩展的第一行中的 flex: 7
顶部显示文本。这些文本小部件将在绘制第一列中的每个容器时动态更改。
在 crossAxisAlignment: CrossAxisAlignment.start
中的第一个 crossAxisAlignment: CrossAxisAlignment.end
中将 Row
更改为 Container
将我的文本置于我希望文本底部的位置。但是 crossAxisAlignment: CrossAxisAlignment.start
正在处理文本的顶部。
我还尝试在两个文本字段之间使用 Expanded
小部件,但由于高度无限且无法计算容器的大小而失败。我不想向我的容器添加约束,除非约束是动态定义的。我还尝试将所有内容都包含在 Expanded
小部件中,我尝试使用 position
小部件,但这些选项均无效。
这是我正在努力完成的非常精美的图画:
这是我的代码:
class TesTingSomething extends StatelessWidget {
@overrIDe
Widget build(BuildContext context) {
return ListVIEw(
children: [
column(
children: [
Container(
alignment: Alignment.center,padding: EdgeInsets.all(10),child: Row(
mainAxisAlignment: MainAxisAlignment.start,crossAxisAlignment: CrossAxisAlignment.start,mainAxisSize: MainAxisSize.min,children: [
Expanded(
flex: 7,child: column(
children: [
padding(
padding: EdgeInsets.all(10),child: Text("Hope"),),Align(
alignment: Alignment.bottomcatenter,child: Text("test"),],Expanded(
flex: 3,child: column(
children: [
Text(
"Lorem ipsum dolor sit amet,consectetur adipiscing elit,sed do eiusmod tempor incIDIDunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupIDatat non proIDent,sunt in culpa qui officia deserunt mollit anim ID est laborum")
],)
],decoration: Boxdecoration(
BoxShadow: [
BoxShadow(
color: colors.black.withOpacity(0.3),spreadRadius: 2,blurRadius: 1,offset: Offset(-1,3),// changes position of shadow
),color: colors.red.shade600,borderRadius: borderRadius.circular(10)),)
],)
],);
}
}
我已经坚持了几个小时。提前致谢。
这有效。需要将 IntrinsicHeight
小部件和 Row
与 crossAxisAlignment: CrossAxisAlignment.stretch
ListView(
children: [
column(
children: [
Container(
alignment: Alignment.center,padding: EdgeInsets.all(10),child: IntrinsicHeight(
child: Row(
mainAxisAlignment: MainAxisAlignment.start,crossAxisAlignment: CrossAxisAlignment.stretch,mainAxisSize: MainAxisSize.min,children: [
Expanded(
flex: 7,child: column(
mainAxisSize: MainAxisSize.max,mainAxisAlignment: MainAxisAlignment.spacebetween,children: [
Padding(
padding: EdgeInsets.all(10),child: Text("Hope"),),Align(
alignment: Alignment.bottomcatenter,child: Text("test"),],Expanded(
flex: 3,child: column(
children: [
Text(
"Lorem ipsum dolor sit amet,consectetur adipiscing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum")
],)
],decoration: BoxDecoration(
boxShadow: [
BoxShadow(
color: Colors.black.withOpacity(0.3),spreadRadius: 2,blurRadius: 1,offset: Offset(-1,3),// changes position of shadow
),color: Colors.red.shade600,borderRadius: BorderRadius.circular(10)),)
],)
],)
以上是大佬教程为你收集整理的如何与动态容器的顶部(开始)和底部(结束)对齐?全部内容,希望文章能够帮你解决如何与动态容器的顶部(开始)和底部(结束)对齐?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。