//MainActivity
private View v;
private TabLayout tab_layout;
private ViewPager vp;
private List<Fragment> list = new ArrayList<>();
private List<String> title = new ArrayList<>();
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v = inflater.inflate(R.layout.fragment2,null);
initData();
initView(v);
return v;
}
private void initView(View v) {
tab_layout = v.findViewById(R.id.tab_layout);
vp = v.findViewById(R.id.vp);
vp.setAdapter(new VpAdapter(getChildFragmentManager(),list,title));
tab_layout.setupWithViewPager(vp);
}
private void initData() {
list.add(new Fragment1());
list.add(new Fragment1());
title.add("娱乐");
title.add("新闻");
}
//适配器
extends FragmentPagerAdapter
public VpAdapter(FragmentManager fm,List<Fragment> list,List<String> title) {
super(fm);
this.list = list;
this.title = title;
}
@Override
public Fragment getItem(int i) {
return list.get(i);
}
@Override
public int getCount() {
return list.size();
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return title.get(position);
}