“Wrap”小部件 - 项目对齐

And*_*ewS 2 flutter flutter-layout

有没有一种方法可以对齐除Wrap最后一行spaceAround和最后一行之外的所有行中的小部件项目start?还有其他方法吗?行数和列数不应固定 - 它取决于设备的宽度和高度。

    showModalBottomSheet(
    context: context,
    builder: (BuildContext bc) {
      return SingleChildScrollView(
        child: new Wrap(
          direction: Axis.horizontal,
          spacing: 10.0,
          alignment: WrapAlignment.spaceAround,
          children: <Widget>[
             //items
          ],
        ),
      );
    });
Run Code Online (Sandbox Code Playgroud)

查看屏幕截图,它实际上是什么样子。我需要最后一行与其他行具有相同的间距并从左侧开始。

Spa*_*atz 6

AFAIK 无法使用 Wrap 小部件实现此目的,但使用extent构造函数可以产生类似的效果 GridView:

        GridView.extent(
          children: List.generate(10, (index) {
            return Center(
              child: Icon(
                Icons.star_border,
                size: 100.0,
              ),
            );
          }),
          maxCrossAxisExtent: 150.0,
        )
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述