本页面介绍了如何实现基本的 FlexBox 布局。
设置项目
将
androidx.compose.foundation.layout库添加到项目的lib.versions.toml中。[versions] compose = "1.11.0-beta02" [libraries] androidx-compose-foundation-layout = { group = "androidx.compose.foundation", name = "foundation-layout", version.ref = "compose" }将库依赖项添加到应用的
build.gradle.kts中。dependencies { implementation(libs.androidx.compose.foundation.layout) }
创建基本 FlexBox 布局
示例 1:FlexBox 布局了两个居中对齐的 Text 元素。
FlexBox( config = { direction(FlexDirection.Column) alignItems(FlexAlignItems.Center) } ) { Text(text = "Hello", fontSize = 48.sp) Text(text = "World!", fontSize = 48.sp) }

示例 2:FlexBox 将五个项换行到两行,并以不等的比例展开这些项
以填充每行中的可用空间。项之间存在 8.dp 的垂直和水平间距。
FlexBox( config = { wrap(FlexWrap.Wrap) gap(8.dp) } ) { // All boxes have an intrinsic width of 100.dp // Some grow to fill any remaining space on the row. RedRoundedBox() BlueRoundedBox() GreenRoundedBox(modifier = Modifier.flex { grow(1.0f) }) OrangeRoundedBox(modifier = Modifier.flex { grow(1.0f) }) PinkRoundedBox(modifier = Modifier.flex { grow(1.0f) }) }

如需详细了解 FlexBox 行为,请参阅 设置容器行为 和 设置
项行为。