我正在嘗試創建一個 TextField 可重用組件,所以我這樣做了
@Composable
fun TextFieldComponent(state: Any, placeholder: String) {
TextField(
value = state,
onValueChange = { textFieldValue -> state = textFieldValue },
placeholder = { Text(placeholder, color = MaterialTheme.colors.secondary) }
)
}
但我收到這些錯誤

這就是我呼叫組件的方式
val textFieldState by rememberSaveable { mutableStateOf("") }
TextFieldComponent(state = textFieldState, placeholder = "Email")
所以有什么解決辦法嗎?
uj5u.com熱心網友回復:
只需state變成 a MutableState<String>,這樣你就可以從函式內部修改它:
@Composable
fun TextFieldComponent(state: MutableState<String>, placeholder: String) {
TextField(
value = state.value,
onValueChange = { textFieldValue -> state.value = textFieldValue },
placeholder = { Text(placeholder, color = MaterialTheme.colors.secondary) }
)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/352767.html
標籤:安卓 科特林 成分 android-jetpack-compose android-jetpack
