/布局代码***********************
<!--TabLayout+ViewPager-->
<android.support.design.widget.TabLayout
android:layout_width="match_parent"
android:layout_height="40dp"
app:tabGravity="fill"
app:tabIndicatorColor="@color/colorAccent"
app:tabMode="fixed"
app:tabSelectedTextColor="@color/colorPrimaryDark"
app:tabTextColor="@color/colorPrimary"
android:id="@+id/mytab"
>
</android.support.design.widget.TabLayout>
//主要代码*********************
TabLayout tabLayout= (TabLayout) v.findViewById(R.id.mytab);
List<String> tabs=new ArrayList<>();
tabs.add("推荐");
tabs.add("课程");
tabs.add("实战");
tabs.add("职业路径");
//设置适配器 getChildFragmentManager:在子fragment中获取 fragment的管理类对象
viewPager.setAdapter(new MyPagerAdapter(getChildFragmentManager(),tabs));
//tabLayout与viewPager创建关联
tabLayout.setupWithViewPager(viewPager);
viewPager.setOffscreenPageLimit(tabs.size());
//适配器代码*******************
public class MyPagerAdapter extends FragmentPagerAdapter{
private List<String> tabs;//选项卡列表
private List<Fragment> list;
@Override
public CharSequence getPageTitle(int position) {
return tabs.get(position);
}
public MyPagerAdapter(FragmentManager fm,List<String> tabs) {
super(fm);
this.tabs=tabs;
}
@Override
public Fragment getItem(int position) {
// Fragment fragment = list.get(position);
Fragment fragment =new Fragment2();
if(position==0){
Fragment1_01 fragment1_01 = new Fragment1_01();
return fragment1_01;
}else if(position==1){
Fragment2 fragment2 = new Fragment2();
return fragment2;
}else if(position==2){
Fragment3 fragment3 = new Fragment3();
return fragment3;
}else if(position==3){
Fragment4 fragment4 = new Fragment4();
return fragment4;
}
return null;
}
@Override
public int getCount() {
return tabs.size();
}
}