Dart 颤振柱不';t扩展
我是一个完全的新手在颤振,但我已经喜欢它。 问题是: 柱为什么没有扩展到最大高度 小部件是灵活的-它会尽量占用所需的空间,但不会占用更多空间。如果您希望它占用所有可用空间,那么将其包装在一个小部件中Dart 颤振柱不';t扩展,dart,flutter,Dart,Flutter,我是一个完全的新手在颤振,但我已经喜欢它。 问题是: 柱为什么没有扩展到最大高度 小部件是灵活的-它会尽量占用所需的空间,但不会占用更多空间。如果您希望它占用所有可用空间,那么将其包装在一个小部件中 使用MainAxisSize.max Row( mainAxisSize: MainAxisSize.max, children: <Widget>[ Column( children: <Widget&
使用
MainAxisSize.max
Row(
mainAxisSize: MainAxisSize.max,
children: <Widget>[
Column(
children: <Widget>[
_someWidget(),
_someWidget(),
_someWidget(),
],
),
],
)
行(
mainAxisSize:mainAxisSize.max,
儿童:[
纵队(
儿童:[
_someWidget(),
_someWidget(),
_someWidget(),
],
),
],
)
使用横轴对齐。拉伸
适合我:
Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Text("Some title"),
Text("Address"),
Text("Description")
],
),
不要在列中使用flex=1,这里可以看到示例
children: [
MyWidget(),
Expanded(
child: MyWidget(),
),
MyWidget(),
],
根据您的布局,我假设您的
列
嵌套在行
中。用IntrinsicHeight
包装您的行
,您的列
将自动扩展其高度,使其与行
的最高子级相同:
IntrinsicHeight(
child: Row(
children: [
Container(width: 40, height: 40, color: Colors.blue),
// tallest child
Container(width: 40, height: 60, color: Colors.blue),
// height will be 60
Column(
...
),
],
),
)
请在您的问题中包含代码,而不仅仅是它的链接。这仅在
列
位于另一个Flex
小部件中时有效,因为Expanded
只能放置在Flex
小部件中。这对我不起作用。为了让它工作,我必须将嵌套列包装在展开的列中mainAxisSize
不是必需的。列上的CrossAxisAlignment指的是水平宽度。如果设置CrossAxisAlignment.stretch,它将从左向右拉伸,而不是从上向下拉伸
IntrinsicHeight(
child: Row(
children: [
Container(width: 40, height: 40, color: Colors.blue),
// tallest child
Container(width: 40, height: 60, color: Colors.blue),
// height will be 60
Column(
...
),
],
),
)