1

考虑使用这个简单的文本小部件:

Text(
    product.name,
    style: TextStyle(fontSize: 16)
)

当我检查 Flutter Inspector 中的 Widget 树时,我看到 renderObject 的高度为 19。此外,对于 fontSize = 14,renderObject 高度大小的值为 16。

这个 19(对于 fontSize 16)或 16(对于 fontSize 14)值是如何计算的?

我看到浏览器(至少是 Chrome)做了类似的事情,我注意到line-heightCSS 属性会这样做,其值约为 1.166667。

回到 Flutter,我注意到实际的 rendereBox 高度值是fontSize*lineHeight四舍五入的(也是 1.166667 左右)。

我尝试将 的 设置heightTextStyle1(这似乎与 CSS 属性相同)但没有运气。该TextStyle height属性的默认值已经是 1,而不是 1.166667。

我在哪里可以得到这个 lineHeight 的确切值?如果 ti 没有在某处硬编码,它是如何计算的?

4

1 回答 1

1

尝试使用 and 的height属性TextStyle设置为零,如下所示:

          Text(
               product.name,
                style: TextStyle(
                  fontSize: 16,
                  height: 0
                ),
              ),
于 2019-08-27T17:58:39.503 回答