又是ViewPager。
和ViewFlow设置自动播放的思路一样,设置ViewPager的自动播放也使用Handler延迟发送消息来实现的。代码很简单,如下:
// 自动播放
private void autoPlay() {
AutoPlayHandler autoPlayHandler = new AutoPlayHandler();
if (autoPlay == true)
autoPlayHandler.sendMessageDelayed(message, 2000);// 延迟两秒发送消息
}
// 自动播放句柄
class AutoPlayHandler extends Handler {
@Override
public void handleMessage(Message msg) {
if (autoPlay == true) {
viewPlay.setCurrentItem((viewPlay.getCurrentItem() + 1)
% picnum);// 换页,同时实现了循环播放
message = autoPlayHandler.obtainMessage(0);// 重新给message赋值,因为前一个message“还在使用中”
sendMessageDelayed(message, 2000);
}
}
}