-1

私は2つのタブで活動しています。私がしようとしているのは、各タブが押されたときに2つの断片の間を置き換えることです。私はまた、2つの断片を持っています:fragmentOneとfragmentTwo。タブが1つ押されたら、私はfragmentOneを表示したいのですが、タブ2が押されたとき、私はfragmentTwoを表示したいです。 私は、アクティビティでコンテナレイアウトを作成し、そこにfragmentOneとfragmentTwoを追加する必要があるかどうか、またはそれを行うための別の方法があるかどうかはわかりません。ケースが0のとき、ここでタブ上のフラグメントを置き換える方法は?

は私のコードは

public class InboxActivity extends AppCompatActivity { 
private TabLayout tabLayout; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_inbox); 

    tabLayout = (TabLayout)findViewById(R.id.tabLayout); 

    tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { 
     @Override 
     public void onTabSelected(TabLayout.Tab tab) { 
      Fragment fragment; 
      int position = tab.getPosition(); 
      //requests = position - 0 
      //invitations = position - 1 
      switch (position){ 
       case 0: 
        break; 
       case 1: 
        break; 
      } 
     } 

     @Override 
     public void onTabUnselected(TabLayout.Tab tab) { 

     } 

     @Override 
     public void onTabReselected(TabLayout.Tab tab) { 

     } 
    }); 
} 

である私が1の場合は、私はそれをどのように行う必要がありますfragmentTwo

を表示したいときfragmentOne

を表示したいですか?

+1

使用するtutorialですビューページでのタブレイアウト このチュートリアルに従ってください:https://android.jlelse.eu/tablayout-and-viewpager-in-your-android-app-738b8840c38a –

答えて

1

を使用してTabLayoutでそれを使用します。ここでは

public void onTabSelected(TabLayout.Tab tab) { 
    Fragment fragment = null; 

    switch (tab.getPosition()) { 
     case 0: 
     fragment = new FirstFragment(); 
     break; 

     case 1: 
     fragment = new SecondFragment(); 
     break;  
    } 

    FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); 
    ft.replace(R.id.simpleFrameLayout, fragment); 
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN); 
    ft.commit(); 
} 

は、より多くの情報

+0

チュートリアルは本当に私を助けた –

0

代わりにViewPagerを使用してください。あなたは次のようにそれを行うことができます

ビューページャにアダプタを設定し、

tabLayout.setupWithViewPager(viewPager); 
関連する問題