android 图片的自动播放

只要明白会使用handler 和 message 图片的自动播放就很简单了,就如同我在会议计时中所写的一样,也是利用handler 传输messge 来更新界面的。

int [] int_Image
中的 R.drawable.t1 到t4 是放在drawble 目录下的四张图片



package com.autoimage.activity;


import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.Window;
import android.widget.ImageView;

public class AutoImageActivity extends Activity {

	private ImageView iv_Show_Image = null;
	private int index = 0;



	private int [] int_Image = {R.drawable.t1,R.drawable.t2,R.drawable.t3,R.drawable.t4};

	@Override
	public void onCreate(Bundle savedInstanceState) {
		requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		this.iv_Show_Image = (ImageView) this.findViewById(R.id.iv_show_image);
		this.iv_Show_Image.setBackgroundResource(R.drawable.t1);
		autoShowImage();

	}

	public void autoShowImage(){//自动播放图片   通过Thread.sleep(2000) 每两秒刷新次图片
		new Thread(new Runnable() {

			@Override
			public void run() {

				while (true) {
					Message msg =  new Message();
					msg.obj = index;
					handler.sendMessage(msg);
					index ++;
					if(index >= int_Image.length){
						index = 0;
					}
					try {
						Thread.sleep(2000);//具体应用时可以通过传参数的方法
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
				}
			}
		}).start();
	}

	public Handler handler = new Handler(){
		public void handleMessage(android.os.Message msg) {
			//这里之所以没有用switch 来判断传回的msg。what 来控制 是应为这里的handler 只处理更新图片,传回来的信息就是图片的编号,所以不需要
			iv_Show_Image.setBackgroundResource(int_Image[(Integer) msg.obj]);
		};
	};
}
所以对于开发而言 能够掌握handler 十分重要。 具体图就不发了,就是4张图片,具体使用中应该动态加载如资源的。操作方法只要变通一下,应该也不太难。

最后,如果大家有好的建议可以留言,我会第一时间回复的

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值