<android.support.design.widget.TabLayout android:id="@+id/tab" android:layout_width="match_parent" android:layout_height="60dp"></android.support.design.widget.TabLayout> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent"></android.support.v4.view.ViewPager>
private TabLayout tab; private ViewPager viewpager; private AFragment aFragment; private BFragment bFragment; private ArrayList<Fragment> fragmentList=new ArrayList<>(); private MyAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); initAdapter(); initTab(); } private void initTab() { tab.setupWithViewPager(viewpager); tab.getTabAt(0).setText("哈哈"); tab.getTabAt(1).setText("呵呵"); } private void initAdapter() { adapter=new MyAdapter(getSupportFragmentManager(),fragmentList); viewpager.setAdapter(adapter); } private void initData() { aFragment=new AFragment(); bFragment=new BFragment(); fragmentList.add(aFragment); fragmentList.add(bFragment); } private void initView() { tab = (TabLayout) findViewById(R.id.tab); viewpager = (ViewPager) findViewById(R.id.viewpager); }
public class MyAdapter extends FragmentPagerAdapterprivate ArrayList<Fragment> arrayList; public MyAdapter(FragmentManager fm, ArrayList<Fragment> arrayList) { super(fm);this.arrayList = arrayList;
} @Override public Fragment getItem(int position) { return arrayList.get(position); } @Override public int getCount() { return arrayList.size(); } }