1.找控件
viewPager = findViewById(R.id.viewpage);
radioGroup = findViewById(R.id.radiogroup);
2.添加页面
final ArrayList<Fragment> list = new ArrayList<Fragment>();
list.add(new Frage_01());
list.add(new Frage_02());
list.add(new Frage_03());
3.Fragement 内部类适配器
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int i) {
return list.get(i);
}
@Override
public int getCount() {
return list.size();
}
});
4.默认选中第一个页面
radioGroup.check(radioGroup.getChildAt(0).getId());
5.滑动页面按钮跟随
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.radiobutton1:
viewPager.setCurrentItem(0);
break;
case R.id.radiobutton2:
viewPager.setCurrentItem(1);
break;
case R.id.radiobutton3:
viewPager.setCurrentItem(2);
break;
}
}
});
6.点击页面,按钮跟随
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i1) {
}
@Override
public void onPageSelected(int i) {
radioGroup.check(radioGroup.getChildAt(i).getId());
}
@Override
public void onPageScrollStateChanged(int i) {
}
});