kotlin - 如何在 jetpack Compose 中将输入类型设置为整数?

标签 kotlin textfield android-jetpack-compose

我该如何制作 TextField只接受整数作为输入,如何将位数限制为 2?
我已经将键盘设置如下,但这允许输入小数,我只需要正整数

keyboardOptions = KeyboardOptions(
    keyboardType = KeyboardType.Number
)

最佳答案

TextField本身不做任何过滤,你必须使用它的回调来做过滤。例如,

AppTheme {
    var text by remember {
        mutableStateOf("")
    }
    Surface(modifier = Modifier.width(320.dp)) {
        TextField(
            value = text,
            onValueChange = { value ->
                if (value.length <= 2) {
                    text = value.filter { it.isDigit() }
                }
            }
        )
}

关于kotlin - 如何在 jetpack Compose 中将输入类型设置为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66823498/

相关文章:

kotlin - 为什么对字节的算术运算在 kotlin 中返回 int?

android - 异常未被协程捕获

html - 这些字符是什么?

javascript - 设置搜索字段的默认值 - 请帮忙!

android - Jetpack compose 中的可组合中心

kotlin - 修改延迟结果

android - 如何对 Kotlin 列表中的项目进行分组和求和

聚焦 TextField 时触发 Flutter TextEditingController 监听器

Android Studio 金丝雀 2020.3.1 : Kotlin Unresolved References

android - 如何更新数据类的属性show compose ui可以观察到变化