我正在编写自定义IME,在其lifecycle中我不了解。
应该分别在显示和销毁键盘视图时调用 onStartInputView()
和onFinishInputView()
。如果用户在软键盘启动时更改了应用程序或文本字段,也将调用它们。很好。
他们奇怪的情况是:
onFinishInputView(finishingInput=true)
onStartInputView(editorInfo, restarting=false)
onFinishInputView(finishingInput=true)
onStartInputView(editorInfo, restarting=false)
onStartInputView()
是最后一个通话,因此从IME角度来看,即使设备已锁定(屏幕关闭),键盘视图也是“可见的”。
我的自定义IME需要准确地知道何时不再显示键盘(例如,停止某些后台处理,或发送 session close 事件):由于似乎我该怎么办?不能依靠onStartInputView()
?
谢谢!