【問題】Android軟鍵盤在介面退出後不自動收回
阿新 • • 發佈:2019-02-02
問題:在介面中有一個EditText,當獲取輸入焦點後會彈出軟鍵盤,但是這時候你退出介面,軟鍵盤並不會收回去。
環境:Fragment,Activity的windowSoftInputMode="adjustPan"
解決:此處不考慮對Activity的windowSoftInputMode進行修改,防止影響其他介面的正常使用。最後通過在Fragment的結束後調裡面進行監聽。
@Override public void onDestroyView() { InputMethodManager imm = (InputMethodManager) App.getInstance().getSystemService(Context.INPUT_METHOD_SERVICE); if(et!=null) { imm.hideSoftInputFromWindow(et.getWindowToken(), 0); } super.onDestroyView(); }
選擇放在onDestroyView的原因是因為我在BaseFragment裡面的這個方法中解除了ButterKnife的繫結。放在其他回撥方法中應該也可以生效。