簡體   English   中英

Android:調用onPause()時隱藏或銷毀視圖

[英]Android: Hiding or destroy view when onPause() is called

您好我在我的片段中使用自定義鍵盤視圖。 當用戶點擊編輯文本時,我會看到這個視圖

insideEdit.setOnTouchListener(new OnTouchListener() {
                public boolean onTouch(View v, MotionEvent event) {

                    mKeyboardViewTolerance = new CustomKeyboard(getActivity(), R.id.keyboardviewtolerance, R.xml.keyboard_layout);
                    mKeyboardViewTolerance.showCustomKeyboard(insideEdit);
                    insideEdit.setInputType(InputType.TYPE_NULL);
                    return false;
                }
            });

當用戶切換到其他片段並進入同一片段並點擊edittext時,視圖不會呈現。 我可以看到視圖在那里,但視圖在屏幕上不可見。

我嘗試將其隱藏在OnPause()中,但仍然看不到視圖

 @Override
    public void onPause() {
         if(mKeyboardViewTolerance != null && mKeyboardViewTolerance.isCustomKeyboardVisible()){

                mKeyboardViewTolerance.hideCustomKeyboard();
            }
}

嘗試在EditText上使用焦點偵聽器。

使用此代碼,它將解決您的問題:

 View view = this.getCurrentFocus();
 if (view != null) {
   InputMethodManager mInputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            mInputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM