我之前有完成活动的问题。我想开始另一项活动并完成当前的活动。当我使用finish
时,它没有退出当前活动。
我怎样才能退出活动?
答案 0 :(得分:90)
您需要先使用intent
context
startActivity
当前finish
到另一项活动。之后,您可以activity
从您重定向的当前 Intent intent = new Intent(this, FirstActivity.class);// New activity
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish(); // Call once you redirect to another activity
开始。
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
{{1}} - 清除活动堆栈。如果您不想清除活动堆栈。然后,不要使用那个标志。
答案 1 :(得分:4)
Intent i = new Intent(this,Here is your first activity.Class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
finish();
答案 2 :(得分:1)
startActivity(new Intent(context, ListofProducts.class)
.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK));
答案 3 :(得分:0)
最好(也是最简单)的解决方案可能是这样:
Intent intent = new Intent(this, OtherActivity.class);
startActivity(intent);
finishAndRemoveTask();
finishAndRemoveTask()
的文档:
完成活动并应将其关闭,并在完成任务的根活动的一部分时将其完全删除,然后调用此命令。
这是您要找的吗?
答案 4 :(得分:-1)
例如:如果要从活动A切换到活动B
,则使用两个活动简单地说就是这样。
Intent intent = new Intent(A.this, B.class);
startActivity(intent);
finish();