【发布时间】:2021-06-11 00:17:28
【问题描述】:
Jetpack Compose Column 中有 ScrollView fillViewPort 之类的东西吗?
看这个例子:
@Composable
fun FillViewPortIssue() {
Column(
Modifier
.fillMaxSize()
.padding(16.dp)
) {
for (i in 0..5) {
Box(
modifier = Modifier
.padding(vertical = 8.dp)
.background(Color.Red)
.fillMaxWidth()
.height(72.dp)
)
}
Spacer(modifier = Modifier.weight(1f))
Button(
modifier = Modifier.fillMaxWidth(),
onClick = { /*TODO*/ }
) {
Text("Ok")
}
}
}
这是结果:
当设备处于横向时,内容被裁剪,因为没有滚动。
如果我添加 verticalScroll 修饰符,请执行 Column...
...
Column(
Modifier
.verticalScroll(rememberScrollState()) // <<-- this
.fillMaxSize()
.padding(16.dp)
) {
...
...滚动问题已修复,但按钮向上,就像这样。
在传统的工具包中,我们可以使用ScrollView + fillViewPort 属性来解决这个问题。有没有相当于 Compose 的东西?
【问题讨论】:
标签: android android-jetpack-compose