Flutter 如何使容器的宽度与其高度匹配
我有一个Flutter 如何使容器的宽度与其高度匹配,flutter,flutter-layout,Flutter,Flutter Layout,我有一个容器,它的高度基于它的父容器,它是一个扩展的,弹性为2。我需要高度和宽度相同。我不想创建固定宽度,例如width:100.0。是否可以使宽度与扩展的容器内的容器的高度匹配?为此,您必须使用布局生成器,以下是最小的代码: Column( children: <Widget>[ Expanded( flex: 2, child: LayoutBuilder( builder: (_, constraints) {
容器
,它的高度基于它的父容器,它是一个扩展的
,弹性为2。我需要高度和宽度相同。我不想创建固定宽度,例如width:100.0
。是否可以使宽度与扩展的容器内的容器的高度匹配?为此,您必须使用布局生成器,以下是最小的代码:
Column(
children: <Widget>[
Expanded(
flex: 2,
child: LayoutBuilder(
builder: (_, constraints) {
return Container(
color: Colors.blue,
width: constraints.maxHeight, // width is made equal to height
);
},
),
),
Expanded(
flex: 9,
child: Container(color: Colors.orange),
),
],
)
纵横比将起作用
AspectRatio(
aspectRatio: 1,
child: Container(
color: Colors.red,
),
)
使用AspectRatio
@CopsOnRoad它是为这样的情况设计的:“一个试图将孩子的大小调整到特定长宽比的小部件。”@pskink我想我应该将它包括在我的解决方案中,但有人已经回答了它。@CopsOnRoad继续,并将它添加到您的amswer中
AspectRatio(
aspectRatio: 1,
child: Container(
color: Colors.red,
),
)