您不需要将width 或height 分配给Container,因此它将根据child 调整大小:
Container(
color: Colors.red,
child: const Text("Hi there111"),
)
如果您想控制最大宽度和最大高度,您将使用Container 的constraints 字段
Container(
color: Colors.red,
constraints: const BoxConstraints(
maxWidth: 200,
),
child: const Text("Hi there11122222222"),
)
当然你也可以在BoxConstraints 中给它minWidth 和minHeight。
maxWidth下的结果
文本太长以至于超出maxWidth 的范围时的结果,在这种情况下高度会自动调整大小:
您还可以添加填充以获得更好的外观:
Container(
padding: EdgeInsets.all(20),
color: Colors.red,
constraints: const BoxConstraints(
maxWidth: 200,
),
child: const Text("Hi there11122222222222222222"),
)
但是对于其他类型的小部件,除了Text,如果像这样用FittedBox 包裹它们会更安全,注意Text 小部件:
Container(
padding: EdgeInsets.all(20),
color: Colors.red,
constraints: const BoxConstraints(
maxWidth: 200,
),
child: FittedBox(
fit: BoxFit.fill,
child: const Text("asfasfasfasfasf")
),
)