当dialog中包含EditeText的时候,假如当前软键盘是弹出的状态,当dialog执行dismiss()的时候该软键盘并不会消失。如果需要软键盘隐藏,重写dismiss()方法
Screenshot_20180302-104014.png @Override
public void dismiss() {
View view = getCurrentFocus();
if (view instanceof TextView) {
InputMethodManager mInputMethodManager = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
mInputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.RESULT_UNCHANGED_SHOWN);
}
super.dismiss();
}
网友评论