我有一个EditText
,在输入任何内容后我都会清空它(无论出于何种原因)。我通过打电话来做到这一点setText("")
一切正常,除非用户不在默认键盘状态(例如数字状态)。因为setText
在按下一个键后InputMethodManager.restartInput
调用非默认状态,然后我调用setText("")
,restartInput()
被调用,键盘切换回默认状态(在大多数情况下是"ABC"状态)。
如果用户需要键入多个数字或特殊字符等,这将非常烦人......有没有办法在不打电话的情况下做到这一点restartInput
?
尝试在编辑文本上实现text watcher
。在方法 onTextChanged()
中,可以使用 setText("")
。您不必以这种方式处理ImputMethodManager
。