我试图在按下软键盘上的 Enter 键时执行一个功能,我 found Modifier.onKeyEvent{}
用于在一般情况下监听用户在软键盘上的输入。
但是,这不适用于 Enter 键(尤其是数字键盘上的“完成”键)。
我的软键盘是这样的
在 TextField 下面使用这个选项
keyboardOptions = KeyboardOptions.Default.copy(keyboardType = KeyboardType.Number)
当我在按下的任何键上打印日志时,所有其他按下的键都会被识别,但那些“完成”和“.-”键除外。
最佳答案
你可以用keyboardActions
来处理它文本字段参数:
TextField(
value = text, onValueChange = { text = it },
keyboardOptions = KeyboardOptions.Default.copy(
keyboardType = KeyboardType.Number,
imeAction = ImeAction.Done
),
keyboardActions = KeyboardActions(onDone = {
println("done")
})
)
关于Android Jetpack 撰写 : Listen to user's keyboard input not working with Enter key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69394673/