在布局文件中添加TabLayout和ViewPager控件
第二步
在Activity类中添加id
private TabLayout mTabLayout;
private ViewPager mViewPager;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.play_layout);
mViewPager = findViewById(R.id.view_pager);
mTabLayout = findViewById(R.id.tabLay);
}
接下来创建fragment类和其布局文件然后创建一个List存储Fragment
Listfragments = new ArrayList<>();//存放Fragment的容器 fragments.add(new HomeFragment());//添加 fragments.add(new HomeFragment());//添加 fragments.add(new HomeFragment());//添加 fragments.add(new HomeFragment());//添加
R.layout.home_fragment,container.xml
HomeFragment .java
public class HomeFragment extends Fragment {//继承Fragment
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return LayoutInflater.from(getContext()).inflate(R.layout.home_fragment,container,false);
}
}
往下添加适配器
ViewPagerAdpter adpterFragment = new ViewPagerAdpter(fm,fragments);//标题适配器
mViewPager.setAdapter(adpterFragment);//添加适配器
mTabLayout.setupWithViewPager(mViewPager);//添加内容关联
适配器继承FragmentStatePagerAdapter
public class ViewPagerAdpter extends FragmentStatePagerAdapter {
private List mList;
private FragmentManager fm;
public ViewPagerAdpter(FragmentManager fm,List mList) {
super(fm);
this.fm = fm;
this.mList = mList;
}
@Override
public Fragment getItem(int position) {
return mList.get(position);
}
@Override
public int getCount() {
return mList.size();
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return super.getPageTitle(position);
}
}
发现列表没有标题可以通过 mTabLayout.getTabAt(0).setText();
mTabLayout.getTabAt(0).setText("首页");
mTabLayout.getTabAt(1).setText("热门");
mTabLayout.getTabAt(2).setText("推荐");
mTabLayout.getTabAt(3).setText("最新");
添加图标
mTabLayout.getTabAt(0).setIcon(R.drawable.setting);



