Expanded:等分組件 flex來設(shè)置比例,父組件必須是Flex稳析,Row筐眷,Column
FractionallySizedBox:根據(jù)現(xiàn)有布局調(diào)整child大小驻呐,child設(shè)置的大小無效
FractionallySizedBox 在同一方向不允許與其他FractionallySizedBox并列碴犬,否則會出現(xiàn)crash
FractionallySizedBox
如果你有一個Widget,則可以使用FractionallySizedBox widget指定要填充的可用空間的百分比按傅。在這里捉超,綠色Container設(shè)置為填充可用寬度的70%和可用高度的30%。
Widget myWidget() {
return FractionallySizedBox(
widthFactor: 0.7,
heightFactor: 0.3,
child: Container(
color: Colors.green,
),
);
}
Expanded
該Expanded 允許widget來填充可用的空間唯绍,該空間水平和垂直都可以拼岳。你可以使用Expanded 的flex屬性將多個widget設(shè)置他們的權(quán)重。綠色Container占寬度的70%况芒,黃色Container占寬度的30%裂问。
Widget myWidget() {
return Row(
children: <Widget>[
Expanded(
flex: 7,
child: Container(
color: Colors.green,
),
),
Expanded(
flex: 3,
child: Container(
color: Colors.yellow,
),
),
],
);
}