将输入法软键盘打开的方法,其中之一:记得加Handler 进行PostDelayed延时操作,因为界面绘制需要时间,软键盘是在界面绘制后才会显示。
new Handler().postDelayed(new Runnable() {
public void run() {
InputMethodManager imm = (InputMethodManager) m_renameText.getContext(). getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(m_renameText, InputMethodManager.SHOW_FORCED);
}
}, 100);
如果是dialog关联的话,到此会出现dialog 关闭后软键盘仍然在显示,不会自动关闭。解决这个问题需要在onCreate()加上下面代码:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
或在AndroidManifest.xml里面 加上 android:windowSoftInputMode="stateAlwaysHidden | adjustPan"