【问题标题】:Flutter Layouts, expand Container in Column to match other widgets widthFlutter Layouts,在 Column 中扩展 Container 以匹配其他小部件宽度
【发布时间】:2021-12-10 01:27:06
【问题描述】:

我正在创建聊天气泡,我希望由消息本身定义宽度,但随后我添加了一个带有发件人姓名的“标题”(一行)和一个装饰线(一个容器)。 我希望这条线填充可用空间,但是当我扩展它时,它会将气泡的宽度推到最大,而与消息的宽度无关。在此截图中,您可以看到收到的消息对于其内容来说太宽了。

这是代码的简化版本,如果我不放置扩展的红色容器是不可见的(宽度 0),扩展占用了最大的可用空间,但我希望列保持确定的宽度消息。

非常感谢。

return Container(
    color: Colors.grey.shade200,
    constraints:
        BoxConstraints(maxWidth: (MediaQuery.of(context).size.width * 0.7)),
    child: Column(
      mainAxisSize: MainAxisSize.min,
      children: [
        Row(
          mainAxisSize: MainAxisSize.min,
          children: [
            Text("Juan"),
            Expanded(
              child: Container(
                color: Colors.red,
                height: 3,
              ),
            )
          ],
        ),
        Text("Text of the message"),
      ],
    ));

【问题讨论】:

  • 你能添加你的尝试代码示例吗?
  • 你需要:child: IntrinsicWidth(child: Column(...

标签: flutter layout


【解决方案1】:

pskink 做到了。他在评论中的回答:

您需要:child: IntrinsicWidth(child: Column(... – 灵巧

希望这也对其他人有所帮助。

【讨论】:

  • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-12-21
  • 1970-01-01
  • 2019-07-10
  • 1970-01-01
  • 2021-06-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多