Jetpack Compose:Modifier.heightIn(...) 与 Modifier.preferredHeight(...) 之间有什么区别

Arc*_*nes 4 android android-jetpack-compose

Modifier.heightIn(...)和 和有什么区别Modifier.preferredHeight()?在我的试验中,它们似乎以相同的方式工作。有谁知道何时使用什么以及在什么情况下使用?

Vit*_*mos 9

Modifier.preferredHeight()设置可以被约束覆盖的高度,而不是Modifier.height,无论传入的约束如何设置高度。

Modifier.heightIn()强制内容遵守这些约束,并在内容大于最大值或小于最小值的情况下将其居中。

附带说明一下,这两个函数有不同的用途,因为第一个函数采用一个参数,而第二个函数采用两个参数。正因为如此,他们几乎不会做同样的事情。

请注意,还有其他用于宽度和高度的函数,以及“大小”,其中包括这两者。通过查看源代码(Ctrl + 单击 | Cmd + 单击),可以看到所有可能性和解释功能的文档。