按下后退按钮上的Android应用程序

时间:2013-11-22 08:20:32

标签: android performance

我打开了很多活动,现在想关闭所有活动点击android后退按钮

意味着想要在点击按钮上关闭应用程序

但是不知道那个

PLZ帮我解决了这个问题..

抱歉我的英语不好

5 个答案:

答案 0 :(得分:1)

试试这个..

退出应用程序后,从第一个活动启动应用程序。

@Override
public void onBackPressed() {

    finish();          
    moveTaskToBack(true);
}

如果您需要从以前显示的活动中打开,请退出应用程序。

试试这个。

@Override
    public void onBackPressed() {       

        moveTaskToBack(true);
    }

答案 1 :(得分:0)

您必须从堆栈中删除所有活动并执行此操作     在进入下一个屏幕之前完成当前活动。实现此功能     代码是YourActivityname.this.finish();

答案 2 :(得分:0)

如果要在用户按下后退按钮时关闭所有堆叠的活动,最好不要将它们堆叠起来,也就是关闭每个启动另一个活动的活动。 也就是说,您需要startActivity(intent);而不仅仅是startActivity(intent); finish();

请注意,后退按钮意味着返回堆栈,因此重新定义它可能与用户期望相矛盾。

答案 3 :(得分:0)

@Override
public void onBackPressed() {

Intent intent = new Intent(this, YourMainClassName.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("EXITAPP", true);
startActivity(intent);
finish();
}

然后在onCreate方法的主类中,

if (getIntent().getBooleanExtra("EXITAPP", false)) {
 finish();
}

答案 4 :(得分:0)

一种可能的解决方案是使用CLEAR_TOP标志调用您的Launcher活动。然后在Launcher Activity中,如果从Back按钮启动它,则完成它。请执行以下操作:

@Override
public void onBackPressed() {
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("kill", true);
startActivity(intent);
finish();
}

然后在MainActivity onCreate()

if( getIntent().getBooleanExtra("kill", false)){
    finish();
}