//把Fragment添加到ArrayList中 fragment = new ArrayList<>(); fragment.add(new HomeFragment()); fragment.add(new ClassifFragment()); fragment.add(new ShoppinFragment()); fragment.add(new ListnrFragment()); fragment.add(new MymallFragment()); //初始化适配器 MyFragmentAdapter adapter = new MyFragmentAdapter(getSupportFragmentManager()); adapter.setList(fragment); viewPager.setAdapter(adapter);
//viewPager+Fragment的适配器
public class MyFragmentAdapter extends FragmentPagerAdapter { private ArrayList<Fragment> list; public MyFragmentAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int i) { return list.get(i); } @Override public int getCount() { return list.size(); } public void setList(ArrayList<Fragment> fragment) { this.list=fragment; } }
//根据需要添加监听
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener()
//点击按钮的监听
radioBtn.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { switch (checkedId){ case R.id.btn_home: viewPager.setCurrentItem(0); break; case R.id.btn_classif: viewPager.setCurrentItem(1); break; case R.id.btn_shoppin: viewPager.setCurrentItem(2); break; case R.id.btn_listnr: viewPager.setCurrentItem(3); break; case R.id.btn_mymall: viewPager.setCurrentItem(4); break; } } });