WIS*_*SHY 3 android android-activity
我有这个应用程序流程:
活动1->活动2->活动3->家庭活动
现在,当用户从Activity3切换到Home Activity时,我希望完成之前的所有活动.因此用户无法前往以前的活动.
我不想使用finish()所有3个活动形式填写.
我试过了
Intent.FLAG_ACTIVITY_CLEAR_TOP
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用
正确的方法是使用意图标志FLAG_ACTIVITY_NEW_TASK和FLAG_ACTIVITY_CLEAR_TASK.
Intent homeIntent=new Intent(this,HomeActivity.class);
homeIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(homeIntent);
Run Code Online (Sandbox Code Playgroud)
CLEAR_TASK将清除任务中的所有先前活动(如果有),并使新活动(HomeActivity)成为任务的根活动.该标志应与FLAG_ACTIVITY_NEW_TASK一起使用.
如果您在ActivityHome(正常情况下没有任何标记)并且想要返回到activity_1并且还想要关闭activity_2和activity_3以从任务中清除,则应使用Intent.FLAG_ACTIVITY_CLEAR_TOP.