提前致谢
答案 0 :(得分:0)
你真的没有提供足够的信息来给你一个正确的答案,但是这将启动一个计时器,当5000毫秒过去时,它将切换到另一个活动:
public class SplashActivity extends Activity {
private Timer t;
public void onCreate(Bundle b) {
super.onCreate(b);
t = new Timer();
t.schedule(new TimerTask() {
@Override
public void run() {
Intent i = new Intent(SplashActivity.this, NextActivity.class);
startActivity(i);
}
}, 5000);
}
}
答案 1 :(得分:0)
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.welcome);
Thread timer = new Thread() {
public void run() {
try {
sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
Intent intent = new Intent();
intent.setClass(WelcomePage.this, HomePage.class);
startActivity(intent);
}
}
};
timer.start();
}
应该做我的朋友的技巧!!
答案 2 :(得分:0)
使用计时器或线程是一种可怕的方法,您正在邀请内存泄漏到您的应用程序中。请改用Android的Handler:
Handler handler = new Handler();
handler.postDelayed(new Runnable()
{
@Override
public void run()
{
// create Intent for next activity and call startActivity with it
}
}, 2000);
如果您对内容视图有引用,请使用contentView.getHandler()而不是创建新内容。
顺便说一下,如果是个人项目,请考虑NOT USING SPLASH SCREENS