我打开了很多活动,现在想关闭所有活动点击android后退按钮
意味着想要在点击按钮上关闭应用程序
但是不知道那个
PLZ帮我解决了这个问题..
抱歉我的英语不好
答案 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();
}