默认情况下,卡采用其子代的大小。因此,如果我们要更改该卡的大小,则还需要更改其子卡的大小。
另一方面,文本是一个小部件。默认情况下,仅占用此文本所需的空间。因此,如果要更改Text的大小,还需要更改其父级的大小。由于卡取决于孩子,而文字取决于父母。
默认情况下,卡片没有任何高度或宽度。宽度/高度取决于儿童或卡片。在屏幕截图中,此处的子项是Text()小部件。 “文本”小部件占用的空间与其字体大小一样大。因此,字体大小越大,Card越大。
解释的最后一部分是不正确的。您无法在此处更改父级大小,因为“卡片”小部件没有任何大小属性。因此,如果您想要更大的卡片和较小的文本,请使用“容器”小组件而不是卡片。几乎所有开发人员仅使用Container来创建Card。容器比卡片具有更多的功能。
Container(
height: 100,
width: 100,
child: Material(
elevation: 5,
child: Text("Chart!"),
),
)