首页 > 代码库 > ViewPager + Handler 实现的图片自动轮播

ViewPager + Handler 实现的图片自动轮播

首先上图看效果

我也是在网上看各种大牛们做的效果,很多都是自定义重写了一些控件来实现这个效果的。我把其中的一位大牛写的ViewPager的效果加上了Handler实现了自动轮播效果,在此做个笔记来以后温习使用!

自动轮播的核心代码如下:

	private final int AUTO_MSG = 1;
	private final int HANDLE_MSG = AUTO_MSG + 1;
	private static final int PHOTO_CHANGE_TIME = 1000;//定时变量
	private int index = 0;
	private Handler mHandler = new Handler() {
		
		public void handleMessage(Message msg) {
			switch (msg.what) {
			case AUTO_MSG:
				viewPager.setCurrentItem(index++);//收到消息后设置当前要显示的图片
				mHandler.sendEmptyMessageDelayed(AUTO_MSG, PHOTO_CHANGE_TIME);
				break;
			case HANDLE_MSG:
				mHandler.sendEmptyMessageDelayed(AUTO_MSG, PHOTO_CHANGE_TIME);
				break;
			default:
				break;
			}
		};
	};
在所有初始化完成之后发送消息就可以了就这么简单:

mHandler.sendEmptyMessageDelayed(AUTO_MSG, PHOTO_CHANGE_TIME);
源代码给大家,有可能里边没有以上代码自己加上去就可以了。点击下载源码



ViewPager + Handler 实现的图片自动轮播