我想让元素留在它们之间的空间,如果它们没有溢出,但如果它们确实包装了它们.

这是我的代码:


return LayoutBuilder(
    builder: (BuildContext context, BoxConstraints constraints) {
      if (constraints.maxWidth <= MediaQuery.of(context).size.width * 0.5) {
        return Wrap(
          children: [
            Text("very long text"),
            Text("2"),
          ],
        );
      } else {
        return Row(
          mainAxisAlignment: MainAxisAlignment.spaceBetween
          children: [
            Text("short text"),
            Text("2"),
          ],
        );
      }
    },
  );

即使文本很小,它也总是在换行中输入

推荐答案

只要用alignment: WrapAlignment.spaceBetween就行了

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: MyWidget(),
        ),
      ),
    );
  }
}

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Column(
      crossAxisAlignment: CrossAxisAlignment.stretch,
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        Wrap(
          alignment: WrapAlignment.spaceBetween,
          children: [
            Text('very long text'),
            Text("another text"),
          ],
        ),
        SizedBox(height: 16),
        Wrap(
          alignment: WrapAlignment.spaceBetween,
          children: [
            Text('verylongtext' * 3),
            Text("another text"),
          ],
        ),
      ],
    );
  }
}

enter image description here

Flutter相关问答推荐

如何在容器中移动图标按钮?

如何让GridView.builder用另外两个小部件来占据屏幕的剩余部分

如何解决这个错误,同时获得的高度的小部件,因此高度的可用工作区域在Flutter ?

在Flutter 中实现中小型应用程序栏标题

使用Future函数的容器中未显示图像,但在使用图像小工具时显示

如何在抖动中将PNG图像转换为WebP

Flutter :执行com.android.build.gradle.internal.tasks.MergeNativeLibsTask$MergeNativeLibsTaskWorkAction时出现故障

如何将请求字段正确添加到DART多部分请求

使用现有Map方法对子类克隆方法的逻辑进行Dart标准化

如何在flutter中将所有单词的第一个字母大写

Dart/Flutter 泛型:类型 '(SearchFilterItemModel) => String' 不是类型 '(SearchFilterItemModel) => String' 的子类型

没有为类型 'Widget' 定义运算符 '[]' .try 定义运算符[]

使用Flutter项目设置Firebase遇到困难?这些解决方案或许能帮到你!

通过在父窗口小部件功能上设置状态来浏览屏幕

应用程序和应用程序内的 webview 之间的单点登录

如何在 flutter 的 onChanged(更改字符)处更改 TextField 边框 colored颜色 ?

为什么 setState 不改变我的变量 Flutter?

为什么 Flutter riverpod 直接分配不起作用但方法可以

如何将所有行项目平等地放在一行中?Flutter

如何从圆角go 除背景 colored颜色