首页 > 解决方案 > 可滚动列中隐藏在键盘后面的输入字段

问题描述

我有一个充满输入字段的可滚动列,每次单击输入字段时,我都会在屏幕上打开软件键盘 - 有时键盘会与输入字段重叠,所以我看不到我在写什么。

编码:

val scrollState = rememberScrollState()
Column(
    modifier = Modifier
        .padding(16.dp)
        .verticalScroll(scrollState)
) {
    MoroTextField(value = titleString, "Title")
    //...
}

Buttons.kt

@Composable
fun MoroTextField(value: MutableState<String>, label: String = "") {
    OutlinedTextField(
        value = value.value,
        onValueChange = { value.value = it },
        singleLine = true,
        label = { Text(text = label) },
        modifier = Modifier
            .fillMaxWidth()
            .padding(16.dp),
    )
}

Manifest.xml

android:windowSoftInputMode="stateVisible|adjustResize">

是否可以自动滚动列,以便单击时输入字段几乎位于屏幕顶部?

标签: androidkotlinandroid-jetpack-compose

解决方案


推荐阅读