Flutter 占用一行空间的一小部分

Flutter 占用一行空间的一小部分,flutter,dart,Flutter,Dart,如何占用未使用的额外空间 我正在基于Rest响应构建一个小部件 有时我可能会得到一个包含3个项目的列表。有时可能只有1或2个 如果有3个项目,我希望它们排成一行,占用所有空间,如下所示 (实现这一目标没有问题) 但如果只有1或2个数据,我只希望它们占据1/3或2/3的空间,如下所示 我怎样才能做到这一点 这就是我目前拥有的,我有一个方法来验证我拥有多少项 Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, child

如何占用未使用的额外空间

我正在基于Rest响应构建一个小部件

有时我可能会得到一个包含3个项目的列表。有时可能只有1或2个

如果有3个项目,我希望它们排成一行,占用所有空间,如下所示

(实现这一目标没有问题)

但如果只有1或2个数据,我只希望它们占据1/3或2/3的空间,如下所示

我怎样才能做到这一点

这就是我目前拥有的,我有一个方法来验证我拥有多少项

Row(
    mainAxisAlignment: MainAxisAlignment.spaceEvenly,
    children: [
        Expanded(child: CustomWidget()), // at least 1 item will exist
        logicToCheckIfMoreThanXItemExists(count: 1) ? Expanded(child: CustomWidget()) : Text('Test1'),
        logicToCheckIfMoreThanXItemExists(count: 2) ? Expanded(child: CustomWidget()) : Text('Test2'),
    ],
)
没有问题,如果我有3个项目。但如果它是1或2,它最终会占用所有空间。因此,为了进行测试,添加了文本小部件

我可以放置假小部件来占据空间,或者使用flex value进行扩展,并在那里添加一个假子小部件


寻找更清洁的替代品。请给我一些建议。谢谢。

您可以打开间隔器小部件。它基本上是一个没有子对象的扩展小部件

您可以使用间隔小部件。这基本上是一个没有孩子的扩展