您的位置:首页 > 其它

使用Handler和Timer+Timertask实现简单的图片轮播

2015-09-01 10:21 351 查看
布局文件就只放了一个简单的ImageView,就不展示了。

下面是Activity

package com.example.administrator.handlerthreadmessagedemo;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.Timer;

public class MainActivity extends Activity  {

private int images[] = new int[]{R.drawable.image1,R.drawable.image2,R.drawable.image3};  //存放图片

private ImageView imageView;
private int index = 0;   //计算
private TextView textView;
private Timer timer = new Timer();
private Timertask timertask;

@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.imageView);
textView = (TextView) findViewById(R.id.title);
timertask = new Timertask();   //放回到Timer中
timer.schedule(timertask,0,1000);  //使用Timer 每隔1秒发送一次空消息
}

private Handler  mhandler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if(msg.what == 0x111){
index++;
imageView.setBackgroundResource(images[index % 3]);
}
}
};

class Timertask extends java.util.TimerTask{

@Override
public void run() {
mhandler.sendEmptyMessage(0x111);
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: