Android 实现图片轮播的三种方法,程序员中年危机

本文介绍了在Android中实现图片轮播的两种方法:使用ViewPager配合Handler和使用已废弃的Gallery组件结合Timer。详细解析了相关代码实现,并提供了一个程序员的个人成长故事。
摘要由CSDN通过智能技术生成

public void handleMessage(Message msg) {

super.handleMessage(msg);

Log.d(LOG_TAG, "receive message " + msg.what);

MainActivity activity = weakReference.get();

if (activity==null){

//Activity已经回收,无需再处理UI了

return ;

}

//检查消息队列并移除未发送的消息,这主要是避免在复杂环境下消息出现重复等问题。

if (activity.handler.hasMessages(MSG_UPDATE_IMAGE)){

activity.handler.removeMessages(MSG_UPDATE_IMAGE);

}

switch (msg.what) {

case MSG_UPDATE_IMAGE:

currentItem++;

activity.viewPager.setCurrentItem(currentItem);

//准备下次播放

activity.handler.sendEmptyMessageDelayed(MSG_UPDATE_IMAGE, MSG_DELAY);

break;

case MSG_KEEP_SILENT:

//只要不发送消息就暂停了

break;

case MSG_BREAK_SILENT:

activity.handler.sendEmptyMessageDelayed(MSG_UPDATE_IMAGE, MSG_DELAY);

break;

case MSG_PAGE_CHANGED:

//记录当前的页号,避免播放的时候页面显示不正确。

currentItem = msg.arg1;

break;

default:

break;

}

}

}

集成代码:MainActivity

下面是MainActivity的代码,主要是加载View和对ViewPager进行初始化设置:

public class MainActivity extends Activity {

private static final String LOG_TAG = “MainActivity”;

private ImageHandler handler = new ImageHandler(new WeakReference(this));

private ViewPager viewPager;

@Override

protected void onCreate(Bu

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值