PopupWindow軟鍵盤彈出遮擋輸入框

在項目中使用到全屏的PopupWindow,底部有一個EditText,在軟鍵盤彈出的時候輸入框會被遮擋,記錄一下我解決這個問題的整個過程:

  1. 第一時間就想到了去看看AndroidManifest中對應的Activity看看有沒有windowSoftInoutMode,發現已經設置了 android:windowSoftInputMode="stateHidden|adjustResize"

  2. 百度搜索這個問題,找到的解決方法是PopupWindow設置

    mWindow.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED); mWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
    BUT,我設置完之後還是會被遮擋。

  3. 頑強的我繼續搜索,發現有人說給PopupWindow的佈局文件最外層嵌套ScrollView,我馬不停蹄的試了試這位大哥的妙招。結果,依舊令人失望呀。

  4. 我感覺好絕望,但是沒辦法問題還是要解決。我突然想起來djustResize有一個兄弟adjustPan,之前經常使用adjustResize不能實現的效果使用adjustPan就好了,那麼我立馬修改了PopupWindowmWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
    AndroidManifest中對應的Activity設置爲 android:windowSoftInputMode="stateHidden|adjustPan"

哇,哇,哇。他好了,終於不會遮擋了,記錄一下,給有需要的人!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章