我有一個WebView(在ViewPager中的SlidingTabLayout內的片段內)。AdjustResize通過點擊外部鍵盤解散鍵盤後不起作用
使用WebView鍵入時,我希望佈局調整大小以確保輸入可見。
當我單擊WebView中的文本輸入時,軟鍵盤出現並且佈局調整大小。我可以輸入我的文字並使用軟鍵盤的返回按鈕提交或使用後退按鈕取消輸入。之後,鍵盤消失,佈局調整回來。正確AdjustResize
行爲。
但是,當通過在Softkeyboard外部單擊來解除鍵盤(例如,在Google中輸入查詢並按下WebView中的搜索按鈕時),鍵盤隱藏並且大約需要2-3秒才能調整佈局大小(離開在我的佈局底部留出2-3秒的空白空間)。之後,當選擇textinput時,鍵盤覆蓋WebView(adjustPan)。
如何確保在按下WebView時關閉鍵盤,adjustResize
行爲得以維持。
我已經試過重新設置AdjustResize(例如,來自onTouch),但這沒有影響:
this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
我也試過following solution但是這給沒有變化。
此外,我認爲這可能不是焦點問題(因爲鍵盤確實出現,並且webview確實響應)。我也從我的查看要求重點:
webView.setFocusable(true);
webView.setFocusableInTouchMode(true);
我想創建一個新項目,複製並粘貼一些代碼,並查看您在我的設備上面臨的問題。你可以做一個編輯,以便這可能嗎? – NecipAllef
@NecipAllef我已經發布了一些文件。但是,如果您希望我可以向您發送完整的項目。電子郵件(24HR)l:[email protected] – Mdlc
我已經看到了您的WebView源代碼,它大約有1.2k行代碼,我相信它們中的大多數甚至與您的問題沒有關係。如果您可以提供一些代碼,使我們能夠觀察問題,但也不難編譯或調試,那麼您可以更快地獲得幫助。所以我建議你創建一個示例項目並分享它。我相信它可以通過Github。 – NecipAllef