我在我的 android 应用程序上创建了一个自定义对话框。此对话框是具有对话框主题的活动。现在,假设应用程序正在显示此对话框,用户按“主页”返回 Android 主页视图。稍后,用户按住按钮,Home
然后从最近的应用程序中选择我的应用程序。它将再次显示对话框。我想在这里做的是对话框不应该显示。我想显示调用此对话框的活动。
我怎样才能做到这一点?
我在我的 android 应用程序上创建了一个自定义对话框。此对话框是具有对话框主题的活动。现在,假设应用程序正在显示此对话框,用户按“主页”返回 Android 主页视图。稍后,用户按住按钮,Home
然后从最近的应用程序中选择我的应用程序。它将再次显示对话框。我想在这里做的是对话框不应该显示。我想显示调用此对话框的活动。
我怎样才能做到这一点?
如何从最近的应用程序中删除活动?
我认为android:excludeFromRecents="true"
应该做的伎俩。在清单中使用它
我想在这里做的是对话框不应该显示。
dialog.cancel()
在onPause()
您也可以使用标志 Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS:
.....
i.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
startActivity(i);
您开始的活动不会出现在最近的应用中。
yourdialog.cancel()
在您的活动onPause()
方法中使用。请参阅http://developer.android.com/reference/android/app/Activity.html。一个例子:
@Override
protected void onPause()
{
super.onPause();
if (yourdialog != null)
{
yourdialog.cancel();
}
}
您可以覆盖onStop()
您的对话活动:
@Override
protected void onStop() {
super.onStop();
finish();
}
但是,这也意味着您的对话框将在设备锁定时关闭。