ViewPage_RadioButton实现带小圆点的无限轮播,效果还能凑合着用。
1、在ViewPage的监听里面这样处理
@Override public void onPageSelected(int position) { Log.d("position",position+""); if ( imageViews.size() > 1) { //多于1,才会循环跳转 if ( position < 1) { //首位之前,跳转到末尾(N) //MyData.image.length图片的数目,是没多加那两张图片的长度 ((RadioButton)rg_choose_main.getChildAt(MyData.image.length-1)).setChecked(true); vp_headPic_main.setCurrentItem(MyData.image.length,false); } else if ( position > MyData.image.length) { //末位之后,跳转到首位(1) vp_headPic_main.setCurrentItem(1,false); //false:不显示跳转过程的动画 ((RadioButton)rg_choose_main.getChildAt(0)).setChecked(true); }else { ((RadioButton)rg_choose_main.getChildAt(position-1)).setChecked(true); } } }
2、在RadioGroup的监听事件里面这样处理
//选择监听 rg_choose_main.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { for (int i = 0;i < group.getChildCount();i++){ if (((RadioButton)group.getChildAt(i)).isChecked()){ vp_headPic_main.setCurrentItem(i+1,false); break; } } } });