- 连续切换Fragment时,这些Fragment中的EditText不会自动弹出软键盘的问题。
EditText editText = findViewById(R.id.edittext);
editText.requestFocus();
setKeyBoardStatus(editText, 1);
/**
* 强制显示或者关闭系统键盘
*
* @param editText 输入框
* @param status 开关标识
*/
public static void setKeyBoardStatus(final EditText editText, final int status) {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
InputMethodManager m = (InputMethodManager) editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
if (status == 1) {
m.showSoftInput(editText, InputMethodManager.SHOW_FORCED);
} else {
m.hideSoftInputFromWindow(editText.getWindowToken(), 0);
}
}
}, 200);
}