2012-08-24 28 views
0

假设我有两个活动。
活动A和活动B,而活动A是主要活动。
活动A中有一个按钮将进入活动B.
因此,活动A - >点击 - >活动B然后点击返回按钮,它将返回活动A.
但是,还有另一个故事,我将有一个GCM通知。
当点击该通知,就会立即进入到活动B.
但问题是:如何返回到其他Activity,即使它不是在Android中创建的?

  1. 如果应用程序已经运行,当我点击该通知并 去活动B,然后单击后退按钮,它会正确地去 回到活动A.
  2. 如果我杀的应用程序,并单击该通知并转到 活动B,然后单击后退按钮,将进入到主屏幕 。但问题是我希望它会返回到活动A.

如何解决此问题?

+0

这可能会混淆用户。违背Android“模式”。你可以提供一个单独的按钮去活动A?让后面的印刷机做它的功能。 – Sameer

+0

在您的活动B中重写onBackpressed并从那里开始您的活动A然后它将在两种用例中都起作用。 – sankar

回答

2

重写onBackPressed方法并使用意图启动活动A.

@Override 
public void onBackPressed() { 
    // TODO Auto-generated method stub 
    super.onBackPressed(); 
     // Start Activity A heres 
} 
+0

如果活动A已经创建,如果我再次启动活动,是否会产生一些问题? – jjLin

+0

移动到活动B时可以杀死活动A,以确保您不会有额外的活动。只需添加完成();在startActivity()之后。 –

+0

还有另一种方法来查找正在运行的活动。您可以尝试查看活动A是否正在运行。 –

0
@Override 
public void onBackPressed() { 
// Don't forget to remove super.onBackPressed() 
startActivity(new Intent(ActivityB.this,ActivityA.class)); 

} 
相关问题