public class AFragment extends Fragment {
private View view;
private TabLayout tabLayout;
private ViewPager viewPager;
private List
fragmentList;
private List
list;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
//加载布局 及资源id
view = inflater.inflate(R.layout.fragment_a, container, false);
tabLayout = (TabLayout) view.findViewById(R.id.tab_layout);
viewPager = (ViewPager) view.findViewById(R.id.vp);
return view;
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//viewPage 添加数据
fragmentList = new ArrayList<>();
fragmentList.add(new BFragment());
fragmentList.add(new CFragment());
//tabLayout 添加数据
list = new ArrayList<>();
list.add("中信人报");
list.add("专门");
tabLayout.addTab(tabLayout.newTab().setText(list.get(0)));
tabLayout.addTab(tabLayout.newTab().setText(list.get(1)));
tabLayout.setTabMode(TabLayout.MODE_FIXED);
Adapter_ViewPage adapter = new Adapter_ViewPage(getFragmentManager());
viewPager.setAdapter(adapter);
tabLayout.setTabsFromPagerAdapter(adapter);
tabLayout.setupWithViewPager(viewPager);
}
class Adapter_ViewPage extends FragmentPagerAdapter {
public Adapter_ViewPage(FragmentManager fm) {
super(fm);
}
@Override
public CharSequence getPageTitle(int position) {
return list.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
@Override
public boolean isViewFromObject(View view, Object object) {
return true;
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
/* 使用PagerAdapter适配器 会移动这两个方法
@Override
public Object instantiateItem(ViewGroup container, int position) {
TextView textView = new TextView(getActivity());
return textView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}*/
}
}
TabLayout使用
最新推荐文章于 2022-10-27 22:12:41 发布