在应用中为了用户体验更好在有EditText的界面,要求一进入界面就弹出软键盘,方法很简单网上有一大把的弹出软键盘的代码:
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(mKeywordEt, InputMethodManager.SHOW_FORCED);
这句话是强制吊起软键盘是肯定可以弹出软键盘的,可是我在使用的过程中却弹不出来,原来是因为直接调用此方法的话有可能Android程序未将屏幕界面绘制完成所有键盘无法正常弹出,解决方案延迟一秒在弹出界面。
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
showInputMethod();
}
}, 1000);
/**
* 弹出软键盘
*/
private void showInputMethod() {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(mKeywordEt, InputMethodManager.SHOW_FORCED);
}