public class MainActivity extends AppCompatActivity {
private ViewPager view_page;
private RadioGroup radio_group;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//初始化
view_page = (ViewPager) findViewById(R.id.view_page);
radio_group = (RadioGroup) findViewById(R.id.radio_group);
//创建集合模拟数据
List list=new ArrayList<>();
list.add(new Frag01());
list.add(new Frag02());
list.add(new Frag03());
//适配器
FragPageAdapter adapter = new FragPageAdapter(getSupportFragmentManager(), list);
view_page.setAdapter(adapter);
//跟随
view_page.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i1) {
}
@Override
public void onPageSelected(int i) {
radio_group.check(radio_group.getChildAt(i).getId());
}
@Override
public void onPageScrollStateChanged(int i) {
}
});
radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.rd1:
view_page.setCurrentItem(0,false);
break;
case R.id.rd2:
view_page.setCurrentItem(1,false);
break;
case R.id.rd3:
view_page.setCurrentItem(2,false);
break;
}
}
});
}
}
**Adapter
public class FragPageAdapter extends FragmentPagerAdapter {
private List<Fragment> list;
public FragPageAdapter(FragmentManager fm, List<Fragment> list) {
super(fm);
this.list = list;
}
@Override
public Fragment getItem(int i) {
return list.get(i);
}
@Override
public int getCount() {
return list.size();
}
}