OutlineTextField,TextField在Jetpack Compose 1.0.0-alpha02中不起作用

时间:2020-09-12 14:46:12

标签: android kotlin android-jetpack-compose

由于某些原因,CoreTextField可以工作,但是TextField和OutlineTextField不会

作品

@Composable
fun TextFieldDemo(){
    val text = remember { mutableStateOf(TextFieldValue("Text")) }
    CoreTextField(modifier = Modifier.fillMaxWidth(),
            value = text.value,
            onValueChange = {text.value = it})
}

不工作

    @Composable
fun TextFieldDemo(){
    val text = remember { mutableStateOf(TextFieldValue("Text")) }
    OutlinedTextField(value = text.value,
            onValueChange = {text.value = it}, label = {Text("Test")})
}

错误:OutlinedTextField不能调用以下函数

根据文档更改

Bug Fixes

androidx.ui.foundation.TextFieldValue and androidx.ui.input.EditorValue are deprecated. TextField, FilledTextField and CoreTextField composables that uses that type is also deprecated. Please use androidx.ui.input.TextFieldValue instead (I4066d, b/155211005)

但是我正在使用它说的(我认为)

编辑

enter image description here

1 个答案:

答案 0 :(得分:2)

您在原始问题中缺少“标签”参数,如图所示。遵循加布里埃莱(Gabriele)的评论使其可行,所以您不应该用答案来改变问题,这很令人困惑。

仅作记录,这是在1.0.0-alpha02中工作的代码:

@Composable
fun TextFieldDemo() {
    val text = remember { mutableStateOf(TextFieldValue("Text")) }
    OutlinedTextField(value = text.value,
        onValueChange = { text.value = it },
        label = { Text("Test") })
}