1. 程式人生 > >PopupWindow中使用EditText軟鍵盤的彈出和隱藏

PopupWindow中使用EditText軟鍵盤的彈出和隱藏

1.解決軟鍵盤的彈出會擋住PopupWindow的問題。

//防止PopupWindow被軟體盤擋住
popupWindoew.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);               
popupWindoew.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

這裡對軟鍵盤彈出方式進行了設定,在網上查的有的說用下面一句,有的說兩句都要有。我用的是兩句話。更多詳情請看:Android windowSoftInputMode屬性詳解

(多謝博主分享)

2.軟鍵盤彈出的方法

InputMethodManager imm = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE);
//這裡給它設定了彈出的時間,
imm.toggleSoftInput(1000, InputMethodManager.HIDE_NOT_ALWAYS);

這個我在網上查了很多,也嘗試了,只有這個方法成功了。不知道為什麼,求大神解釋一下,謝謝。

3.軟鍵盤消失的方法

//引數:1,自己的EditText。2,時間。
imm.hideSoftInputFromWindow
(edt_AddComment_Pop_LRDA.getWindowToken(), 0);

這個方法的第一個引數需要傳入自己的EditText物件。比如QQ空間的評論,當點擊發送的時候呼叫此方法即可。