private ViewPager mVp;
int[] imgs = {R.drawable.c, R.drawable.b, R.drawable.azxc, R.drawable.awqe};
int i = 0;
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
mVp.setCurrentItem(i);
i++;
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
tupian();
}
private void tupian() {
//定时器,每过一秒发送一次
new Timer().schedule(new TimerTask() {
@Override
public void run() {
handler.sendEmptyMessage(0);
}
}, 0, 1000);
//设置适配器
mVp.setAdapter(new MyPageAdapter());
//设置viewpager的滑动事件
mVp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
switch (position % imgs.length) {
case 0:
RadioButton rb1 = (RadioButton) findViewById(R.id.rb1);
rb1.setChecked(true);
break;
case 1:
RadioButton rb2 = (RadioButton) findViewById(R.id.rb2);
rb2.setChecked(true);
break;
case 2:
RadioButton rb3 = (RadioButton) findViewById(R.id.rb3);
rb3.setChecked(true);
break;
case 3:
RadioButton rb4 = (RadioButton) findViewById(R.id.rb4);
rb4.setChecked(true);
break;
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
private class MyPageAdapter extends PagerAdapter {
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView = new ImageView(MainActivity.this);
imageView.setImageResource(imgs[position % imgs.length]);
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
}
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v4.view.ViewPager
android:id="@+id/vp"
android:layout_width="match_parent"
android:layout_height="200dp" />
<RadioGroup
android:id="@+id/rg"
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<RadioButton
android:id="@+id/rb1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<RadioButton
android:id="@+id/rb2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<RadioButton
android:id="@+id/rb3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<RadioButton
android:id="@+id/rb4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</RadioGroup>
</LinearLayout>