首页 > 解决方案 > 我如何理解容器“尽可能小”

问题描述

在Container.class中被描述为“尽可能小”,但我试过没有孩子的Container,它充满了屏幕,所以我怎么能理解尽可能小

class MyApp extends StatefulWidget {
  @override
  MappState createState() {
    return MappState();
  }

}


class MappState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'myApp',
      home: Scaffold(
        body: Container(color: Colors.red,),
      ),
    );
  }

}```

标签: flutterflutter-layout

解决方案


文档对此非常清楚

没有子容器的容器尽量大,除非传入的约束是无限的,在这种情况下,它们尽量。带有孩子的容器根据孩子的大小调整自己的大小。构造函数的宽度、高度和约束参数会覆盖它。

无界约束是宽度或高度设置为double.infinity

没有孩子->“尽可能大”

没有孩子无界->“尽可能小”

我推荐你看看这篇文章,它有一些带有图像的代码示例,说明了这些约束的行为。


推荐阅读