如何直接从我的第二个活动
我想退出我的应用程序和我有类似的代码退出:如何直接从我的第二个活动
public void onClickPause (View view) {
Intent salida = new Intent(Intent.ACTION_MAIN);
finish();
}
但这返回的第一个活动。
无论何时您希望退出所有打开的活动,您都应该按下一个按钮,该按钮加载应用程序启动时运行的第一个活动,然后清除所有其他活动,然后完成最后一项活动。这样做在您的项目中应用以下代码
Intent intent = new Intent(getApplicationContext(), FirstActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("EXIT", true);
startActivity(intent);
以上代码完成除FirstActivity以外的所有活动。然后,我们需要完成FirstActivity在Firstactivity的onCreate输入下面的代码或OnStart中
if (getIntent().getBooleanExtra("EXIT", false)) {
finish();
}
与该代码一切正常,除了我在每个活动和de应用程序完成时,并且我回来启动应用程序,我的modelGetter计数器:public static int getPunto(){ \t \t \t return punto ++; \t}不要停止增量,不要从0开始; – BarcelonaDev 2014-10-03 13:16:23
在您的第一个活动中,请致电完成()之后startActivity()。这应该够了吧。
编辑:这样第一个活动将是完成第二个活动将退出到主屏幕/启动器。
当你通过活动,以移动的后退按钮的工作,你会想到它,有一个东西叫做堆栈中,节省了活动顺序。当您调用finish()时,堆栈顶部的活动结束并返回之前正在运行的活动。这就是为什么你不退出应用程序,但你回到第一次活动。意向salida什么也不做,你可以删除它。 你必须做的是清除后台,然后完成。看看这个question
如果要支持API> 16,你可以叫
finishAffinity()
集'机器人:clearTaskOnLaunch =“真”'你的发射活动。 – Rustam 2014-10-03 11:39:17
@BarcelonaDev:在提问之前,您必须考虑通过SO进行搜索。真。 – 2014-10-03 11:44:21