Java 如果按下home键或back键,则停止以下活动-Android
我有一个问题,那就是我的飞溅屏幕。它是作为一个介绍和3秒后,它显示了该程序的主菜单。 无论如何,如果我在SplashScreen显示期间按下Back(后退)或Home(主页)按钮,它将关闭,但我选择在SplashScreen之后执行的活动在三秒钟后仍将运行 我的代码:****更新的代码*****Java 如果按下home键或back键,则停止以下活动-Android,java,android,Java,Android,我有一个问题,那就是我的飞溅屏幕。它是作为一个介绍和3秒后,它显示了该程序的主菜单。 无论如何,如果我在SplashScreen显示期间按下Back(后退)或Home(主页)按钮,它将关闭,但我选择在SplashScreen之后执行的活动在三秒钟后仍将运行 我的代码:****更新的代码***** Handler ur = new Handler(); myRun = new Runnable() { public void run() {
Handler ur = new Handler();
myRun = new Runnable() {
public void run() {
mainIntent = new Intent(SplashScreen.this,MyApp.class);
SplashScreen.this.startActivity(mainIntent);
SplashScreen.this.finish();
overridePendingTransition(R.anim.fadein,
R.anim.fadeout);
}
};
ur.postDelayed(myRun, SPLASH_DISPLAY_TIME);
}
protected void onStop() {
super.onStop();
ur.removeCallbacks(myRun);
}
即使我在这个SplashScreen中有一个onStop(),下一个活动仍将在SPLASH\u DISPLAY\u时间之后运行
由于我更改了代码,在按下Home(主页)按钮和SplashScreen(飞溅屏幕)消失后,我强制关闭了代码,因此我无法启动第二个活动。请尝试以下方法:
private static final int SPLASH_DISPLAY_TIME = 3000;
Handler ur = new Handler();
Runnable yourRunnable = new Runnable() {
public void run() {
mainIntent = new Intent(SplashScreen.this,MyApp.class);
SplashScreen.this.startActivity(mainIntent);
SplashScreen.this.finish();
overridePendingTransition(R.anim.fadein,
R.anim.fadeout);
}
};
ur.postDelayed(yourRunnable, SPLASH_DISPLAY_TIME);
然后,在onDestroy上的某个地方,或者在splashscreen活动关闭时使用的任何检测方法:
// somewhere
ur.removeCallbacks(yourRunnable);