您的位置:首页 > 其它

软键盘关闭的终极版

2016-09-06 14:36 295 查看
软键盘是个神奇的东西,当你知道是哪个view调起的软键盘,关闭起来so easy,最怕的就是不知道view是哪个?以及是否是上一个界面finish没有关闭的软键盘,为此有了如下的代码:

public static void hideKeyboard(Activity activity) {
InputMethodManager inputMethodManager = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
// 找到当前获得焦点的 view,从而可以获得正确的窗口 token
View view = activity.getCurrentFocus();
// 如果没有获得焦点的 view,创建一个新的,从而得到一个窗口的 token
if (view == null) {
view = new View(activity);
}
inputMethodManager.hideSoftInputFromWindow(view.getApplicationWindowToken(), 0);
if(inputMethodManager.isActive()){
Log.i("LG","键盘还没关闭");
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
}else{
Log.i("LG","键盘已经关闭");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  keyboard