簡體   English   中英

Android:鍵盤解雇導致滾動到底部

[英]Android: Keyboard dismissal results in scrolling to the bottom

我正在使用ViewPager在我的應用程序中將兩個片段顯示為頁面。 在第1頁中,有EditText字段。 當我滾動到Page2(或選擇Tab2)時,我想以編程方式關閉與任何這些文本字段相關聯的鍵盤(在第1頁中)。 我為此編寫了以下代碼:

mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {


        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
            View currentView = getCurrentFocus();
            if (currentView != null) {

                InputMethodManager imm = (InputMethodManager)  currentView.getContext().getSystemService(Activity.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(currentView.getWindowToken(), 0);
            }

        } });

如果鍵盤在第1頁中可見,則點擊第二個選項卡將導致顯示為“向下滾動”狀態。 這使得工具欄在狀態欄上升,使得工具欄標題幾乎不可讀。 請查看下面的屏幕截圖(第一張圖片是第1頁,第二張是Page2):

第1頁 第2頁

如何糾正這個?

試試這個有效

 editText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { switch ((actionId)) { case EditorInfo.IME_NULL:break; } return false; } }); 

並調用editText.onEditorAction(EditorInfo.IME_NULL);

暫無
暫無

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

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