【发布时间】:2020-09-24 16:15:26
【问题描述】:
假设我有一些关于 jetpack-compose 内容的活动
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
ScrollableColumn(
modifier = Modifier
.fillMaxSize()
.border(4.dp, Color.Red)
) {
val (text, setText) = remember { mutableStateOf("") }
TextField(
value = text,
onValueChange = setText,
label = {},
modifier = Modifier
.fillMaxWidth()
)
for (i in 0..100) {
Text("Item #$i")
}
}
}
}
}
如果我要启动此活动并专注于 TextField,则会弹出一个软件键盘。
然而,界面不会对此做出反应。 ScrollableColumn 的底部边框 (.border(4.dp, Color.Red)) 以及第 100 项 (Text("Item #$i")) 将不可见。
换句话说,软键盘与内容重叠。
我怎样才能让jetpack compose尊重可见区域的变化(由于软件键盘)?
【问题讨论】:
标签: android android-layout android-jetpack-compose