android manifest中activity android:windowSoftInputMode。進入界面顯示鍵盤,滾動ListView,鍵盤消失

android:windowSoftInputMode

activity主窗口與軟鍵盤的交互模式,可以用來避免輸入法面板遮擋問題。

這個屬性能影響兩件事情:

【一】當有焦點產生時,軟鍵盤是隱藏還是顯示

【二】是否減少活動主窗口大小以便騰出空間放軟鍵盤



【1】stateUnspecified:軟鍵盤的狀態並沒有指定,系統將選擇一個合適的狀態或依賴於主題的設置

【2】stateUnchanged:當這個activity出現時,軟鍵盤將一直保持在上一個activity裏的狀態,無論是隱藏還是顯示

【3】stateHidden:用戶選擇activity時,軟鍵盤總是被隱藏

【4】stateAlwaysHidden:當該Activity主窗口獲取焦點時,軟鍵盤也總是被隱藏的

【5】stateVisible:軟鍵盤通常是可見的

【6】stateAlwaysVisible:用戶選擇activity時,軟鍵盤總是顯示的狀態

【7】adjustUnspecified:默認設置,通常由系統自行決定是隱藏還是顯示

【8】adjustResize:該Activity總是調整屏幕的大小以便留出軟鍵盤的空間

【9】adjustPan:當前窗口的內容將自動移動以便當前焦點從不被鍵盤覆蓋和用戶能總是看到輸入內容的部分

【10】adjustNothing:當前窗口的內容將自動移動以便當前焦點從不被鍵盤覆蓋和用戶能總是看到輸入內容的部分


這設置的值("stateUnspecified""adjustUnspecified"以外)將覆蓋在主題中設置的值


進入界面就彈出鍵盤

設置EditText獲取焦點

android:focusableInTouchMode="true"
設置Activity windowSoftInputMode屬性:

android:windowSoftInputMode="stateVisible|stateAlwaysVisible|adjustResize"


滾動ListView時,隱藏鍵盤

監聽ListView滾動

		vListView.setOnScrollListener(new OnScrollListener() {
			@Override
			public void onScrollStateChanged(AbsListView view, int scrollState) {
				if(SCROLL_STATE_TOUCH_SCROLL == scrollState){
					Utils.hideSoftInput(vListView);
				}
			}
			
			@Override
			public void onScroll(AbsListView view, int firstVisibleItem,
					int visibleItemCount, int totalItemCount) {
				
			}
		});

工具類

	/**
	 * 隱藏軟鍵盤
	 * 
	 * @param v
	 */
	public static void hideSoftInput(View v) {
		InputMethodManager imm = (InputMethodManager) v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
		if (imm.isActive()) {
			imm.hideSoftInputFromWindow(v.getApplicationWindowToken(), 0);
		}
	}

	public static void showSoftInput(View v) {
		InputMethodManager imm = (InputMethodManager) v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
		if (!imm.isActive()) {
			imm.showSoftInput(v, InputMethodManager.SHOW_FORCED);
			imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
		}
	}


發佈了88 篇原創文章 · 獲贊 40 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章