在Flutter中为列和行分配权重

时间:2018-06-22 06:13:26

标签: flutter flutter-layout

我想给Flutter App中的所有行以相等的间距。 有没有像砝码之类的东西或可以使用的任何此类小部件。 例如,我的应用程序中有2个Row元素。我希望两个元素都占据屏幕一半/一半的宽度。

2 个答案:

答案 0 :(得分:4)

Flex(即RowColumn)内部,Expanded消耗了剩余的可用空间。如果您将两个Expanded放在同一个Flex中,它们将平均共享剩余的可用空间(默认情况下)。

您使用扩展参数flex为扩展项分配了“权重”,例如,可以让它们共享60/40而不是50/50等的剩余空间。

答案 1 :(得分:0)

尽管您可以使用AspectRatio类来均匀地管理窗口小部件,但将其均匀地连续排列对您的需求更为有意义。行和列都具有mainAxisAlignment和crossAxisAlignment类。

只需将要间隔的小部件包装在列中并进行设置:

Column(mainAxisAlignment: MainAxisAlignment.spaceEvenly ... )

您也可以像给定here一样使用spaceBetween和spaceAround。