1

私はクリック時にポーズボタンに変わるすべてのフラグメントに再生ボタンを持つ動的なビューページを持っています。ビューペイジャーでフォーカスしていないフラグメントをリフレッシュ

私がやっていることは、他のフラグメントの再生ボタンをクリックしたときに、最後に再生されていたフラグメントの再生ボタンが一時停止から再生するまで再生する必要があるということです。休憩はデフォルト状態にする必要があります。

私はコード

倍の70%に私の作業を行うが、それは例の30%に更新されません
 pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { 
     @Override 
     public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { 

      previous = current; 
      current = position; 



      try{ 
       if(position!=0) 
       { 
        SwipeFragItem yourFragment =  (SwipeFragItem)mPageAdapter.getItem(previous); 
        yourFragment.refresh(); 

       } 

      } 
      catch (Exception e){ 
       Crashlytics.logException(e); 
      } 


     } 

     @Override 
     public void onPageSelected(int position) { 

     } 

     @Override 
     public void onPageScrollStateChanged(int state) { 

     } 
    }); 

を以下でこれをやってみました。私は、この30%のケースで実行されることを保証しており、例外をスローしません。

私のアプローチが適切でない場合は、他の方法をお勧めします。

ご協力いただきますようお願い申し上げます。事前に感謝します。

答えて

0

イベントバスを使用していると思います。ような何か:あなたは、ビューページャに追加し、すべての断片が再生ボタンが押されたときにトリガされますイベントに耳を傾けるために登録することにより GreenbotまたはOtto

、すべてのフラグメントが通知されます。イベントは明らかに識別子を持つ必要があるので、どのフラグメントの再生ボタンが押されたかを知ることができます。同じフラグメントでない場合は、ボタンをデフォルトの状態に戻すことができます。繰り返しますが、これは私が考えることのできる1つの方法です。

関連する問題