求助:Compose TextField设置Number键盘类型时onValueChange未触发
问题:设置数字键盘后OutlinedTextField的onValueChange不触发
当为OutlinedTextField设置keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number),甚至用KeyboardOptions.Default.copy(keyboardType = KeyboardType.Number)指定数字键盘时,组件的onValueChange回调始终无法触发。
版本信息:
| 软件 | 版本 |
|---|---|
| Compose compiler | 1.4.6 |
| Compose UI | 1.4.3 |
| Kotlin | 1.8.2 |
复现代码:
import android.util.Log import androidx.compose.foundation.text.KeyboardOptions import androidx.compose.material3.OutlinedTextField import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.text.input.KeyboardType @Composable fun TestNumberInput() { var numbers by remember { mutableStateOf("") } OutlinedTextField( value = numbers, onValueChange = { Log.i("TEST", "numbers: $numbers") numbers = it }, keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number) ) }
此前已见过类似问题,但引发原因和当前场景不匹配。
内容的提问来源于stack exchange,提问作者Damian
相关产品推荐
相关产品推荐

