use*_*487 4 android android-intent android-activity android-studio onbackpressed
我有一个活动列表A - B -C -D - E等等,例如最终活动是K.当我按下BACK按钮时,我希望在堆栈中清除所有这些活动.我能怎么做 ?事实上,我骑过去了
onBackPress(){
moveTaskToBack(true);
finish();
}
Run Code Online (Sandbox Code Playgroud)
但只删除当前活动并退出应用程序.然后,我回来申请,它恢复K之前的活动.我希望它从重新打开应用程序时开始.我认为这里的原因是因为堆栈中的活动列表仍然存储,所以我想在单击BACK按钮时清除所有堆栈.有什么建议 ?非常感谢你 !
小智 6
有完成所有活动的方法称为finishAffinity().
public void onBackPressed(){
super.onBackPressed();
this.finishAffinity();}
Run Code Online (Sandbox Code Playgroud)
你需要用你的FLAG_ACTIVITY_CLEAR_TOP内部调用你的活动onBackPressed
@Override
public void onBackPressed()
{
Intent it = new Intent(YouCurrentActivity.this, YourFinalActivity.class);
it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(it);
finish();
}
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你!
| 归档时间: |
|
| 查看次数: |
3878 次 |
| 最近记录: |