Flutter 如何在布局中展开嵌套容器?
我正在尝试展开容器布局。我尝试使用扩展的小部件,但仍然不能正常工作。我想扩展到最大尺寸的蓝色容器,如下面的示例所示。你有什么建议我怎么做?或者我可以用什么小部件来解决我的问题 这是我的密码:Flutter 如何在布局中展开嵌套容器?,flutter,flutter-layout,Flutter,Flutter Layout,我正在尝试展开容器布局。我尝试使用扩展的小部件,但仍然不能正常工作。我想扩展到最大尺寸的蓝色容器,如下面的示例所示。你有什么建议我怎么做?或者我可以用什么小部件来解决我的问题 这是我的密码: 容器( 填充:边缘设置。全部(3), 子:列( crossAxisAlignment:crossAxisAlignment.start, 儿童:[ 划船( crossAxisAlignment:crossAxisAlignment.start, 儿童:[ 圆形( 背景颜色:Colors.brown.shad
容器(
填充:边缘设置。全部(3),
子:列(
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
划船(
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
圆形(
背景颜色:Colors.brown.shade800,
儿童:文本(“J”),
纵队(
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
文本(“某些文本”),
容器(
装饰:新盒子装饰(
边框:新边框.all(颜色:Colors.blueAccent)),
子项:文本(“如何将此容器扩展到最大宽度?”)
],
)
],
)
],
));
谢谢您是否尝试过用扩展的小部件包装它?您是否尝试过用扩展的小部件包装它?我无法解释这一点,但它只适用于两个扩展的
小部件:
ConstrainedBox(
constraints: BoxConstraints(maxWidth: MediaQuery.of(context).size.width),
child: Container(
padding: EdgeInsets.all(3),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
CircleAvatar(
backgroundColor: Colors.brown.shade800, child: Text("J")),
Expanded(
child: Column(
key: key,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text("Some text"),
Container(
decoration: new BoxDecoration(
border: new Border.all(color: Colors.blueAccent)),
child: Row(
children: <Widget>[
Expanded(
child: Text(
"How expand this container to max width?"))
],
),
),
],
),
)
],
)
],
),
),
);
ConstrainedBox(
约束:BoxConstraints(maxWidth:MediaQuery.of(context).size.width),
子:容器(
填充:边缘设置。全部(3),
子:列(
crossAxisAlignment:crossAxisAlignment.start,
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
划船(
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
圆形(
backgroundColor:Colors.brown.shade800,child:Text(“J”),
扩大(
子:列(
钥匙:钥匙,
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
文本(“某些文本”),
容器(
装饰:新盒子装饰(
边框:新边框.all(颜色:Colors.blueAccent)),
孩子:排(
儿童:[
扩大(
子:文本(
“如何将此容器扩展到最大宽度?”)
],
),
),
],
),
)
],
)
],
),
),
);
我无法解释这一点,但它只适用于两个扩展的
s:
ConstrainedBox(
constraints: BoxConstraints(maxWidth: MediaQuery.of(context).size.width),
child: Container(
padding: EdgeInsets.all(3),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
CircleAvatar(
backgroundColor: Colors.brown.shade800, child: Text("J")),
Expanded(
child: Column(
key: key,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text("Some text"),
Container(
decoration: new BoxDecoration(
border: new Border.all(color: Colors.blueAccent)),
child: Row(
children: <Widget>[
Expanded(
child: Text(
"How expand this container to max width?"))
],
),
),
],
),
)
],
)
],
),
),
);
ConstrainedBox(
约束:BoxConstraints(maxWidth:MediaQuery.of(context).size.width),
子:容器(
填充:边缘设置。全部(3),
子:列(
crossAxisAlignment:crossAxisAlignment.start,
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
划船(
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
圆形(
backgroundColor:Colors.brown.shade800,child:Text(“J”),
扩大(
子:列(
钥匙:钥匙,
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
文本(“某些文本”),
容器(
装饰:新盒子装饰(
边框:新边框.all(颜色:Colors.blueAccent)),
孩子:排(
儿童:[
扩大(
子:文本(
“如何将此容器扩展到最大宽度?”)
],
),
),
],
),
)
],
)
],
),
),
);
用扩展的
小部件包装列
小部件,并将crossAxisAlignment:crossAxisAlignment.start
更改为crossAxisAlignment:crossAxisAlignment.stretch
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
Text("Some text"),
Container(
decoration: new BoxDecoration(
border: new Border.all(color: Colors.blueAccent)
),
child: Text("How expand this container to max width?")
)
],
),
)
扩展(
子:列(
crossAxisAlignment:crossAxisAlignment.stretch,
儿童:[
文本(“某些文本”),
容器(
装饰:新盒子装饰(
边框:新边框。全部(颜色:Colors.blueAccent)
),
子项:文本(“如何将此容器扩展到最大宽度?”)
)
],
),
)
用扩展的
小部件包装列
小部件,并将crossAxisAlignment:crossAxisAlignment.start
更改为crossAxisAlignment:crossAxisAlignment.stretch
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
Text("Some text"),
Container(
decoration: new BoxDecoration(
border: new Border.all(color: Colors.blueAccent)
),
child: Text("How expand this container to max width?")
)
],
),
)
扩展(
子:列(
crossAxisAlignment:crossAxisAlignment.stretch,
儿童:[
文本(“某些文本”),
容器(
装饰:新盒子装饰(
边框:新边框。全部(颜色:Colors.blueAccent)
),
子项:文本(“如何将此容器扩展到最大宽度?”)
)
],
),
)
如果您想要这种类型的小部件,那么为什么不直接使用ListTile
。ListTile通常用于文本。我想在容器中添加更多的小部件。如果您想要这种类型的小部件,那么为什么不直接使用ListTile
。ListTile通常用于文本。我想在容器中添加更多的小部件。A尝试了,但仍然不起作用。我得到了一个错误:RenderFlex子项具有非零flex,但传入的高度约束是无限的代码>当我包装容器时。A尝试过,但仍然不起作用。我得到了一个错误:RenderFlex子项具有非零flex,但传入的高度约束是无限的代码>当我包装容器时。谢谢!它工作正常!我将调查它为什么工作:)谢谢!它工作正常!我将调查它为什么起作用:)