2013-12-13 40 views
0

每次创建Activity时,我都会保留参考。之后,出于某种原因,我想要展示它,我该怎么做?我不想将此Activity更改为single tasksingle instance模式,因为我想将其用作standard模式。如何开始任意活动

下面我显示一些代码来澄清问题。

我有这个全局变量(在所有活动全球):

ArrayList<Activity> list = new ArrayList<Activity>(); 

Activity onCreate,我将执行如下代码:

public void onCreate(Bundle bundle){ 
    list.add(this); 
} 

现在,如果我要秀/在list中启动第二个Activity。我怎样才能做到这一点?

+2

一个活动的参考,不要存放在全局列表plsss .. –

+0

@ M-WaJeEh这仅是一个例子,我不是在全球列表存储它确实如此。 [Eidted:对不起,错字] – GMsoF

+1

那就是我所说的,**不要**将活动的引用存储在**全局**列表中。 –

回答

1

不要存放Activity的引用在List,而不是存储他们的阶级是这样的:

list.add(this.getClass()); 

后来又刚刚推出ActivityFLAG_ACTIVITY_REORDER_TO_FRONT

Intent intent = new Intent(this, list.get(0)); 
intent.setFlag(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
startActivity(intent); 

http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_REORDER_TO_FRONT

+0

用这种方法,我仍然无法启动/显示我想要的活动。因为可能有多个具有相同类名的'Activity's instance'。怎么样? – GMsoF