一个Activity基本就可解决:
LogoActivity.java
import java.util.Timer;(下载整个项目代码,可到我的资源页下载: http://download.youkuaiyun.com/detail/qq_29614465/9514139 )
import java.util.TimerTask;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ImageView;
public class LogoActivity extends Activity {
//先设置图片的数组
int[] images = {R.mipmap.b1, R.mipmap.b2, R.mipmap.b9,}; // Android studio通常用mipmap, eclipse通常用drawable int FLAG = 001; // Message传递标志
int num = 0;// 照片编号
Timer timer = null;
Handler handler;
ImageView image;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_logo);
image = (ImageView) findViewById(R.id.image123);//在布局中放一个不加处理的ImageView
handler = new Handler() {
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
if (msg.what == FLAG) {
if (num >= images.length) {
timer.cancel(); //停止继续切换 Intent intent = new Intent(LogoActivity.this, MainActivity.class); //跳转到主页 startActivity(intent);
finish();
} else {
image.setImageResource(images[num]);
num++;
}
}
}
};
timer = new Timer();
TimerTask timerTask=(new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
Message msg = new Message();
msg.what = FLAG;
handler.sendMessage(msg);
}
});
timer.schedule(timerTask, 0, 2000);//schedule这种用法中,有3个参数
//第一个是TimerTask 类
//第二个参数为延迟时间,0表示无延迟,否则比如是500毫秒,用户调用 schedule() 方法后,要等待500毫秒才可以第一次执行 run() 方法。
//第三个参数是间隔时间。意思是第一次调用之后,从第二次开始每隔多长的时间调用一次 run() 方法。
}
}