gpt4 book ai didi

android - Jetpack Compose 中列和行的 Expanded 和 LayoutSize.Expand 的区别

转载 作者:行者123 更新时间:2023-12-04 14:17:46 27 4
gpt4 key购买 nike

我在 Android Studio Canary 1 上尝试 Jetpack Compose 并添加了 Column可组合到 ui。 Column有一个名为 modifier 的属性我们可以在其中传递不同的修饰符。我用了Expanded导致 Column 的修饰符占用所有可用空间。

另外,ColumnmainAxisSizecrossAxisSize属性,所以我也尝试了它们并将其设置为 LayoutSize.Expand我认为这是为了扩展给定的轴。这也导致了 Column占用所有可用空间。看看下面的例子:

1. 使用 LayoutSize.Expand

Column(mainAxisSize = LayoutSize.Expand,
crossAxisSize = LayoutSize.Expand) {
Text("Jetpack",modifier = ExpandedHeight)
Text("Compose",modifier = ExpandedHeight)
}

输出:

enter image description here

2.使用扩展
Column(modifier = Expanded) {
Text("Jetpack",modifier = ExpandedHeight)
Text("Compose",modifier = ExpandedHeight)
}

输出:

enter image description here

Observation is that Both the following code provides the same output. Then what is the difference between Expanded and LayoutSize.Expand when it comes to Column and Row?

最佳答案

它们是实现同一目标的两种方法:

Expanded modifier强制目标组件填充所有可用空间。它可以应用于任何接受修饰符的组合。

mainAxisSize 参数是一种设置布局大小的方法,是特定于 Row/Column 的参数。

您应该使用 Expanded 修饰符。 mainAxisSize 参数已从 Column 中删除.

关于android - Jetpack Compose 中列和行的 Expanded 和 LayoutSize.Expand 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58558452/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com