类InputMethodManager中方法showSoftInput的用途是什么?我是android新手,对我来说documentation不是很清楚:
如果需要,显式请求向用户显示当前输入法的软输入区域。如果用户以他们表示希望开始对其输入的方式与您的视图进行交互,请调用此方法。
根据我的理解,打开键盘,我是对的吗?键盘为什么要使用此方法,不触及EditText自动打开键盘?
答案 0 :(得分:1)
不,触摸编辑文本不会自动打开软键盘。这只是默认行为。在引擎盖下,当您触摸编辑文本时会发生一系列事件。最终,Android框架将在键盘的IMS上调用showSoftInput。这是键盘有机会决定它不想出于某种原因显示,如果没有显示则返回false。例如,我相信在Swype中,如果设备上的硬件键盘已经滑出,我们就不会显示键盘,理论上他们会想要使用硬件键盘。
大多数情况下,你只是要在这里使用默认实现,或者做一些小的检查然后再回到默认实现。