Android:如果用户离开当前活动,如何暂停下一个活动的启动?
我已经为我的应用程序创建了一个启动屏幕。5秒后,它使用以下代码开始下一个活动。现在我的问题是,如果用户在5秒结束前离开当前活动,那么在5秒结束后,下一个活动(在我的例子中是InfoActivity)就会出现,即使我在另一个应用程序或其他任何地方Android:如果用户离开当前活动,如何暂停下一个活动的启动?,android,splash-screen,Android,Splash Screen,我已经为我的应用程序创建了一个启动屏幕。5秒后,它使用以下代码开始下一个活动。现在我的问题是,如果用户在5秒结束前离开当前活动,那么在5秒结束后,下一个活动(在我的例子中是InfoActivity)就会出现,即使我在另一个应用程序或其他任何地方 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.launch);
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.launch);
new Handler().postDelayed(new Runnable() {
public void run() {
final Intent mainIntent = new Intent(LaunchActivity.this, InfoActivity.class);
LaunchActivity.this.startActivity(mainIntent);
LaunchActivity.this.finish();
}
}, 5000);
}
您可以使用一个变量
shouldNavigate=true;
在原始活动的onDestroy()方法中取消设置
onDestroy() {
shouldNavigate=false;
[...]
}
然后在postDelayed-run()-方法中检查
if(shouldNavigate) {...}
您可以使用一个变量
shouldNavigate=true;
在原始活动的onDestroy()方法中取消设置
onDestroy() {
shouldNavigate=false;
[...]
}
然后在postDelayed-run()-方法中检查
if(shouldNavigate) {...}
这个程序对我很有效 flag=false
这个程序对我很有效 flag=false
正确处理该活动的生命周期。这应该可以完成任务。正确处理该活动的生命周期。这应该可以完成任务。