我创建了我的android应用程序的splashscreen。我沿着这条路线走了一段自己的活动,在splashthread中展示自己,然后加载“MainMenu”活动。 这工作正常,直到我想要退出应用程序。 当我点击“后退按钮”时,我看到MainMenu窗口。当我第二次点击“后退按钮”时,我看不到闪屏,我再次看到MainMenu。额外的“后退”将结束该应用程序。安卓splashscreen怪异时退出
不好,有没有什么好的提示如何避免这种行为? 最重要的当然是从“MainMenu”点击“返回”时直接结束应用程序,但是我想我需要重新建模splashscreen以成为该活动的一部分呢?启动MainMenu的活动后,立即
Splashcode
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
Thread splashThread = new Thread() {
@Override
public void run() {
try {
Log.d("Trying","Tries");
int waited = 0;
while (waited < 5000) {
sleep(100);
waited += 100;
}
} catch (InterruptedException e) {
Log.d("Catching", e.toString());
} finally {
finish();
Intent i = new Intent(UEABB.this,MainMenu.class);
UEABB.this.startActivity(i);
startActivity(i);
}
}
};
splashThread.start();
}
问候
顺便说一句,不应该在'startActivity(i)'之后调用finish吗?这是异步的,所以我首先启动意图,然后调用finish() – Juri 2011-02-28 07:07:14
你可能是对的,我会尝试,肯定;) – elwis 2011-02-28 18:33:08
不,我在startActivity(i)调用后移动了“finish()”,没有不同。我仍然需要额外的“后退”才能真正退出应用程序,烦人! – elwis 2011-03-01 05:09:35