Flutter:如何创建一行文本,其中一个字符串位于行尾,而另一个字符串位于行首?

Flutter: How do I create a line of text where one String goes to the end of the line while the other stays at the beginning?

我正在开发一个 flutter 应用程序,其中的文本小部件中有一些文本。文本有两个组成部分,一个单词和一个数字。我想对其进行格式化,使单词出现在行首,但数字出现在行尾。例如,假设下面的框横跨整个屏幕:

Word 1 Num

我希望它是动态的,这样无论您的屏幕尺寸如何,单词和数字都会显示在行的两端。我能找到的唯一解决方案是使用 padRight,但我不确定如何使其动态化,因为我不确定如何设置宽度参数。有没有办法将屏幕宽度映射到一行中的字符数?或者我缺少任何其他工具?

我目前的解决方案是这样的:

Text(
" " + name + ":".padRight(32) + number,
)

这显然不行,因为我随意选择了32,它不会动态变化。

感谢任何帮助,谢谢!!

    Row(
      mainAxisAlignment: MainAxisAlignment.spaceBetween
      children: [
           Text("Word 1"),
           Text("Num"),
      ]
    )

尝试下面的代码,你使用 Spacer class

使用垫片

Row(
      mainAxisAlignment: MainAxisAlignment.spaceBetween,
      children: [
        Text("Word 1"),
        Spacer(),
        Text("Name"),
      ],
    ),

使用 MainAxisAlignment:

Row(
  mainAxisAlignment: MainAxisAlignment.spaceBetween,
  children: [
    Text("Word 1"),
    Text("Name"),
  ],
),

参考布局here

结果屏幕->

**像这样尝试**

Container(
    margin: const EdgeInsets.all(10.0),
   decoration: BoxDecoration(
     borderRadius: BorderRadius.circular(8.0),
     color: Colors.black26,
   ),
    child: const ListTile(
      title: Text("Word 1"),
      trailing: Text("Num"),
    ),
  )

它将在所有设备上完美运行