Flutter 颤栗为什么包裹不';环绕行时不工作?

Flutter 颤栗为什么包裹不';环绕行时不工作?,flutter,row,flutter-layout,Flutter,Row,Flutter Layout,我试图用flutter包装一些内容,但没有成功。 我发现我不能像使用芯片或文本小部件那样包装行。 有人知道为什么吗 这是三组并列的行,每一行都有一个图标和一个文本。但在较小的屏幕上,它会溢出,因为没有足够的空间(宽度) 我希望当当前行中的空格结束时,最后一组行(一个图标和一个标签)跳到下一行 多谢各位 我试图用容器包装行,但没有成功 Row( children: <Widget>[ Wrap( children: <Widget&

我试图用flutter包装一些内容,但没有成功。 我发现我不能像使用芯片或文本小部件那样包装行。 有人知道为什么吗

这是三组并列的行,每一行都有一个图标和一个文本。但在较小的屏幕上,它会溢出,因为没有足够的空间(宽度)

我希望当当前行中的空格结束时,最后一组行(一个图标和一个标签)跳到下一行

多谢各位

我试图用容器包装行,但没有成功

    Row(
    children: <Widget>[
        Wrap(
        children: <Widget>[
            Row(
            children: <Widget>[
                Text('long text 1'),
                Text('an icon here'),
            ],
            ),
            Row(
            children: <Widget>[
                Text('Anoter Label'),
                Text('Anoter icon'),
            ],
            ),
        // I want this row to jump to next line when there is not space in 
        // current line 
        Row(
            children: <Widget>[
                Text('More Text'),
                Text('Moire icon'),
            ],
            ),
        ],
        )
    ],
    ),
行(
儿童:[
包裹(
儿童:[
划船(
儿童:[
文本(“长文本1”),
文本(“此处的图标”),
],
),
划船(
儿童:[
文本(“其他标签”),
文本(“其他图标”),
],
),
//我希望这一行在没有空格时跳到下一行
//当前线路
划船(
儿童:[
文本(“更多文本”),
文本(“莫尔图标”),
],
),
],
)
],
),


当我在较小的屏幕上时,带有标题的图像会调整大小并很适合。但是图像上方的标签和图标溢出。因此,我希望最后一组图标/标签,即价格为$simbol e的图标/标签,跳到新行。我可以在只使用文本小部件的情况下进行换行,并且可以正常工作,但随后我松开了mainAxisAlignment:mainAxisAlignment.spaceAround这样的行上的对齐方式更新:这是一个解决方案

Row(
      mainAxisAlignment: MainAxisAlignment.spaceAround,
      children: <Widget>[
        Expanded(
          child: Wrap(
            children: <Widget>[
              Icon(Icons.alarm),
              Text('60 Minutes'),
            ],
          ),
        ),
        Expanded(
          child: Wrap(
            children: <Widget>[
              Icon(Icons.shop),
              Text('Lorem ipsumssssssssssssssssssssssssssssssss'),
            ],
          ),
        ),
        Expanded(
          child: Wrap(
            children: <Widget>[
              Icon(Icons.attach_money),
              Text('Very expensive'),
            ],
          ),
        )
      ],
    );
行(
mainAxisAlignment:mainAxisAlignment.spaceAround,
儿童:[
扩大(
孩子:包裹(
儿童:[
图标(图标。警报),
文本(“60分钟”),
],
),
),
扩大(
孩子:包裹(
儿童:[
图标(Icons.shop),
文本('Lorem IPSUMSSSSSSSSSSS'),
],
),
),
扩大(
孩子:包裹(
儿童:[
图标(图标。附上钱),
文本(“非常昂贵”),
],
),
)
],
);

你可以这样做

Row(
          children: <Widget>[
            Expanded(
              child: Wrap(
                children: <Widget>[
                  Text('long text 1'),
                  Text('an icon here'),
                  Text('Anoter Label'),
                  Text('Anoter icon'),
                  // I want this row to jump to next line when there is not space in
                  // current line
                  Text('More Text'),
                  Text('Moire icon'),
                ],
              ),
            )
          ],
        ),
行(
儿童:[
扩大(
孩子:包裹(
儿童:[
文本(“长文本1”),
文本(“此处的图标”),
文本(“其他标签”),
文本(“其他图标”),
//我希望这一行在没有空格时跳到下一行
//当前线路
文本(“更多文本”),
文本(“莫尔图标”),
],
),
)
],
),
还是这个

 Row(
          children: <Widget>[
            Expanded(
              child: Wrap(
                children: <Widget>[
                  Row(
                    children: <Widget>[
                      Text('long text 1'),
                      Text('an icon here'),
                    ],
                  ),
                  Row(
                    children: <Widget>[
                      Text('Anoter Label'),
                      Text('Anoter icon'),
                    ],
                  ),
                  // I want this row to jump to next line when there is not space in
                  // current line
                  Row(
                    children: <Widget>[
                      Text('More Text'),
                      Text('Moire icon'),
                    ],
                  ),
                ],
              ),
            )
          ],
        ),
行(
儿童:[
扩大(
孩子:包裹(
儿童:[
划船(
儿童:[
文本(“长文本1”),
文本(“此处的图标”),
],
),
划船(
儿童:[
文本(“其他标签”),
文本(“其他图标”),
],
),
//我希望这一行在没有空格时跳到下一行
//当前线路
划船(
儿童:[
文本(“更多文本”),
文本(“莫尔图标”),
],
),
],
),
)
],
),

行的宽度由
mainAxisSize
属性决定。如果
mainAxisSize
属性是
mainAxisSize.max
,然后是 行是传入约束的最大宽度。如果
mainAxisSize
属性为
MainAxisSize.min
,则行的宽度为总和 受传入约束约束的子对象的宽度


要解决您的问题,只需将行小部件上的
mainAxisSize
属性设置为
mainAxisSize.min
,您可以共享您实际尝试执行的设计吗?为什么将
wrap
小部件包装在
行中。?删除最上面的
&它可以正常工作。删除最上面的行无效。它与芯片或文本一起工作。不带行。我将添加一个图像来显示布局。仅包装文本窗口小部件可以工作,但随后我松开了行上的对齐方式,如mainAxisAlignment:mainAxisAlignment.spaceAround查看我答案的顶部更新,希望这会让你受益匪浅。我一直在寻找这种行为