jjzjj

Flutter Container() vs SizedBox() for dummy empty

coder 2023-07-22 原文

我对这个很好奇。我已经看到很多使用 Container() 作为虚拟隐藏小部件的示例,例如,当加载完成时,然后我们 setState(() { _isLoaded = true; }); . 所以我们可以像这样使用状态,对吧?

return _isLoaded ? Container() : LoaderWidget();

或者也许使用 SizedBox() 实际上更好,因为它不需要太多参数并且通常用于填充?

return _isLoaded ? SizedBox() : LoaderWidget();

还是我错了?

最佳答案

如果用作占位符:

Container 如果 widget 没有 child ,没有高度,没有宽度,没有约束,也没有对齐,但是父级提供了有界约束,那么 Container 会扩展以适应父级提供的约束。

SizedBox 如果小部件没有 child ,没有高度,没有宽度,则宽度和高度为零。

因此,SizedBox() 更像是一个句法占位符。

另外,请注意 SizedBox()是一个 const 构造函数但是 Container()不是。第一个允许编译器创建更高效​​的代码。

关于Flutter Container() vs SizedBox() for dummy empty,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57703182/

有关Flutter Container() vs SizedBox() for dummy empty的更多相关文章

随机推荐