无法在 Jetpack Compose 中以交互模式输入文本

问题描述 投票:0回答:1

我正在尝试以交互模式在文本字段中输入文本,但它不起作用。但是,在物理设备上执行此操作是可行的。

MainActivity.kt

@Preview(showSystemUi = true)
@Composable
fun HelloContentPreview()
{
    HelloContent()
}


@Composable
fun HelloContent()
{
    Column(modifier = Modifier.padding(16.dp)) {
        var name by remember { mutableStateOf("") }
        Text(
            text = "Hello! $name",
            modifier = Modifier.padding(bottom = 8.dp),
            style = MaterialTheme.typography.h5
        )
        OutlinedTextField(
            value = name,
            onValueChange = {
                name = it
                Log.i(TAG, "HelloContent: onValueChange: $it")
            },
            label = { Text("Name") }
        )
    }
}

互动模式 enter image description here

android android-studio textfield android-jetpack-compose
1个回答
0
投票

基于IssueTracker中的答案 https://issuetracker.google.com/u/1/issues/236149640#comment8

此问题目前已修复。至少对我来说,它有效。

PS 如果它对您不起作用,请确保您已更改 @Preview 组合中的 onValueChange 回调中的文本值!像这样:

@Preview(showBackground = true)
@Composable
private fun InputPrev() {
    var textValue by remember { mutableStateOf("Text") }
    MainTextInputField(
        text = textValue,
        onValueChange = {
            textValue = it
        }
    )
}
© www.soinside.com 2019 - 2024. All rights reserved.