1

ViewPagerを使用して2つのフラグメントをアプリケーションのページとして表示しています。 1ページ目には、EditTextフィールドがあります。ページ2にスクロールするとき(またはTab2を選択するとき)、これらのテキストフィールド(ページ1)のいずれかに関連付けられたキーボードをプログラムで閉じる必要があります。 1ページで、2番目のタブをタップすると、「スクロールダウン」状態で表示された2ページになりながら、キーボードが表示されている場合はAndroid:キーボードの終了が下にスクロールする

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); 
      } 

     } }); 

:私はそのために以下のコードを書いています。これにより、ステータスバー上にツールバーが表示され、ツールバーのタイトルがほとんど見えなくなります。 (第一イメージがPage1のであり、第二はページ2である)下のスクリーンショットを確認してください:

これを修正する方法

Page1Page2

答えて

0

は、それが

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);

+0

は申し訳ありませんが呼んでこれを試してみてください。問題は、キーボードが外されていないということではありません。すでに質問に投稿したコードでキーボードを却下することができます。問題は、私が言及したスクロール動作です。 – DroidHeaven

関連する問題