我开始使用 Jetpack compose (1.0.0-beta07) 时遇到了一个非常奇怪的 TextField 问题。根据所有可能的文档和说明,我做的一切都是正确的,但 Android Studio 不断给我写消息 a
for b
以下是我编写的代码,其中 Studio 仍然强调 None of the following functions can be called with the arguments supplied.
和 TextField
,但我认为它在定义 Text (label)
时有问题。当我用 text = it
替换 TextField
时,问题消失了,但在键入键盘时 remember {mutableStateOf ("text")}
不会更改文本。
"text"
答案 0 :(得分:1)
您可以使用:
var text = remember { mutableStateOf("text") }
TextField(
value = text.value,
onValueChange = {
text.value = it
},
label = { Text(label) },
keyboardOptions = KeyboardOptions(keyboardType = keyboardType)
)
或:
var text by remember { mutableStateOf("text") }
TextField(
value = text,
onValueChange = {
text = it
},
label = { Text(label) },
keyboardOptions = KeyboardOptions(keyboardType = keyboardType)
)
您可以在官方文档中阅读有关 delegated properties 的更多信息。