我有四个活动,A,B,C和D. app以活动A开始,然后通过使用显式打算转到B,然后使用C然后以相同方式转到D.从D,如果我想直接回到B或A,它是如何做到的?
答案 0 :(得分:3)
例如,在C中。如果在用户按下活动D中的后退按钮发送活动D的意图后调用finish(),则她/他将被发送到活动A或B,具体取决于您开始活动的位置C。 另一种方法是将标志设置为清除顶部,如下所示:
Intent intent = new Intent(this, LoginActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
最简单的方法是根据您希望应用中的流量调用finish()。
答案 1 :(得分:0)
活动B中的public void onCreate()
{ //当你想开始新的活动时 startActivity(意向); //开始活动到B
}
活动C中的public void onCreate()
{
//当你想开始新的活动时 startActivityForResult(intent,10 //任何代码值); //开始活动到c
}
protected void onActivityResult(int requestCode,int resultCode,Intent data)
{
如果(resultCode为== 25)
{
光洁度();
}
}
public void onCreate()
{
//当你想回到Actitvity A
时 的setResult(25);
光洁度();
}
解释
1)在活动“A”中,您将一个新活动开始为“B” 2)在“B”活动中,使用startActivityForResult方法将一个活动开始为“C” 3)在“C”活动中,当你完成时,它显然会进入“B”活动,结果代码是你设置的。如果匹配,它将关闭“B”活动,并转到“A”活动
4)这是跳过一个或多个活动的一个简单技巧