在開發過程中,有些界面是不需要彈出輸入法的,所以我們得做個判斷來關閉它。
參考了論壇大神的帖子,自己也寫了一個。
代碼如下:
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
這只是一個思路,請大家根據實際需要來做自己的程序。