布局文件
LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="48dp"
app:tabSelectedTextColor="@android:color/holo_blue_bright"
app:tabTextColor="@android:color/black"
app:tabIndicatorColor="@android:color/holo_blue_bright"
/>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</LinearLayout>
Activity代码
List<Fragment> listFragments = new ArrayList<>();
Fragment1 fragment1 = new Fragment1();
Fragment2 fragment2 = new Fragment2();
Fragment3 fragment3 = new Fragment3();
listFragments.add(fragment1);
listFragments.add(fragment2);
listFragments.add(fragment3);
AdapterViewPager pagerAdapter = new AdapterViewPager(getSupportFragmentManager(), listFragments);
viewpager.setAdapter(pagerAdapter);
viewpager.setCurrentItem(0);
viewpager.setOffscreenPageLimit(2);
//关键代码
tabs.setupWithViewPager(viewpager);
tabs.setTabMode(TabLayout.MODE_FIXED);
public class AdapterViewPager extends FragmentPagerAdapter {
private String tabTitles[] = new String[]{"第一个", "第二个", "第三个"};
List<Fragment> list;
public AdapterViewPager(FragmentManager fm, List<Fragment> list) {
super(fm);
this.list = list;
}
@Override
public Fragment getItem(int arg0) {
return list.get(arg0);
}
@Override
public int getCount() {
return list.size();
}
@Override
public CharSequence getPageTitle(int position) {
return tabTitles[position];
}
}