【问题标题】:Set spacing between two lines of text设置两行文本之间的间距
【发布时间】:2019-09-22 09:28:12
【问题描述】:

我正在尝试设置两行文本之间的间距,但我无法做到。现在,两条线相互渲染,但我想要一些我可以调整的间距。我曾尝试使用 Spacer 小部件,但这会使间距过大。有一个更好的方法吗?

        Expanded(
          child: Column(
            children: <Widget>[
              Text("We're finding your pizza.",
                  style: theme.textTheme.body1.copyWith(fontSize: 18)),
              Text(
                  "We'll send you a notification.",
                  textAlign: TextAlign.center,
                  style: theme.textTheme.body1.copyWith(fontSize: 18)),
            ],
          ),
        ),

【问题讨论】:

  • 使用SizedBox(height: 20)

标签: flutter dart flutter-layout


【解决方案1】:

您还可以通过在TextStyle 中设置height 属性来设置文本行之间的特定填充。这样你就可以设置每一行的高度。

                  Text(
                    "Let's make\nsome pancakes",
                    style: TextStyle(
                      height: 1.2, //SETTING THIS CAN SOLVE YOUR PROBLEM
                      color: Colors.white,
                      fontSize: 20,
                      fontWeight: FontWeight.w300,
                    ),
                    textAlign: TextAlign.center,
                  ),

事实上,我们可以从文档中确认:

对于大多数字体,将 height 设置为 1.0 与忽略或将 height 设置为 null 不同,因为 fontSize 设置了 EM-square 的高度,这与字体提供的行高指标不同。

欲了解更多信息:https://api.flutter.dev/flutter/painting/TextStyle/height.html

我在Flutter how do I remove unwanted padding from Text widget? 上发布了相同的答案以获得相反的结果,但它的工作方式相同。

【讨论】:

    【解决方案2】:

    Spacer 将占用剩余的所有可用空间,您可能不需要它。所以你可以简单地使用SizedBox 小部件。

    Text("One"),
    SizedBox(height: 20), // use this
    Text("Two"),
    

    【讨论】:

    • 谢谢!它工作得很好。现在,如果我希望这个间距随屏幕大小而变化,我可以使用“MediaQuery.of(context).size.height*0.5”吗?我试着把它放在 sizebox 中,但它返回错误。 (我想确保这个高度在较小的屏幕上较小,而在较大的屏幕上较大 - 即它在所有屏幕上看起来都一样)。
    • 是的,你可以这样做,你能用导致错误的完整代码编辑你的问题吗?
    • 刚刚解决了错误,只是小语法错误。谢谢!
    【解决方案3】:

    您可以简单地使用带有填充的 SizedBox 小部件或 Container 小部件。

    SizedBox(高度:15.0)

    容器( 填充:const EdgeInsets.all(15.0))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-05
      • 1970-01-01
      • 1970-01-01
      • 2021-05-21
      • 1970-01-01
      相关资源
      最近更新 更多