首先上图看效果
我也是在网上看各种大牛们做的效果,很多都是自定义重写了一些控件来实现这个效果的。我把其中的一位大牛写的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);
源代码给大家,有可能里边没有以上代码自己加上去就可以了。
点击下载源码