【发布时间】:2011-08-31 10:12:37
【问题描述】:
不建议直接退出应用程序,所以重点是完成所有活动,以便一切都进入后台,用户返回主屏幕。我的问题是我有主要活动,它总是以标志 Intent.FLAG_ACTIVITY_CLEAR_TOP | 启动Intent.FLAG_ACTIVITY_SINGLE_TOP 并启动另一个活动,我想在其中放置退出按钮。为了让一切都回到后台,我必须完成当前活动和主要活动。我虽然用那些标志和应该退出的额外信息来启动主要活动会起到作用,但是与意图一起交付的额外内容不会到达主要活动 - 它仍然获得android用来启动应用程序的意图。
换句话说,我尝试了类似的方法:
// Exit's onClick:
Intent intent = new Intent(someContext, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
intent.putExtra("exit", true);
context.startActivity(intent);
currentActivity.finish();
// MainActivity onCreate:
Bundle extras = getIntent().getExtras();
if (extras != null)
{
// application never reach this point
boolean exit = extras.getBoolean("exit");
if (exit)
{
finish();
return;
}
}
附加物品已交付。我怎样才能让它工作?
谢谢
【问题讨论】:
标签: android android-activity android-intent exit