在开发过程中,有些界面是不需要弹出输入法的,所以我们得做个判断来关闭它。
参考了论坛大神的帖子,自己也写了一个。
代码如下:
privatevoid closeKeyboard() {
// 创建一个静态变量check,用于只获取一次屏幕高度,因为运用在首次运行的时候EditText会获得焦点,并且弹出输入法,我们要获取到那个值。当然这个值只需要获取一次!
// private static int check = 0;
// firstTimeViewHeight 第一次运行时候的scrollView的高度
if(check == 0) {
check++;
firstTimeViewHeight = scroll.getHeight();
}
if(scroll.getHeight() == firstTimeViewHeight)
{
// 关闭软键盘的方法
((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(
getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
}
}
代码中scroll 指的是scrollView
这只是一个思路,请大家根据实际需要来做自己的程序。