在类似评论说说的这种界面中,输入评论内容后,点击发送按钮,小米手机的键盘有时候不消失,只是消失了自定义的输入框式样弹框,大概率出现的一种情况(即使你自己调用的关闭键盘也会出现无效的情况)。
常用的打开键盘方法:
View view = getCurrentFocus();
if (view != null) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view, InputMethodManager.SHOW_FORCED);
}
常用的关闭键盘方法:
View view = getCurrentFocus();
if (view != null) {
((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(view.getWindowToken(), 0);
}
执行上面的方法有时候也无效。
解决方法:
修改Activity的windowSoftInputMode 为 :stateAlwaysHidden
<activity
android:name=".a.b.NIMeiDeActivity"
android:configChanges="orientation|screenSize"
android:windowSoftInputMode="stateAlwaysHidden" />
<activity
android:name=".a.b.NIMeiDeActivity2"
android:configChanges="orientation|screenSize"
android:windowSoftInputMode="adjustPan|stateAlwaysHidden" />
若你之前写的windowSoftInputMode是stateHidden,将stateHidden改为stateAlwaysHidden。