2011-12-07 93 views
6

我調用startActivity將數據從一個活動傳遞到另一個活動,在外部類中使用活動的上下文。startActivity每次創建Activity的新實例

這是如何創建的意圖一個例子發送:

public static Intent createSearchIntent(Context context, Class<?> cls) { 
    Intent i = new Intent(ACTION_SEARCH, null, context, cls); 
    return i; 
} 

這就是我如何開始一個活動:

mContext.startActivity(mIntent); 

編輯: 對不起,我是錯了怎麼了。當我調用startActivity時,活動不會被破壞,但是我發送意圖的活動始終具有onCreate方法,因此我猜測活動的新實例正在創建,而不是返回到已暫停/已停止的活動。

我該如何改變它,以便我可以返回暫停/停止的活動?

+1

它不應該終止您的活動,除非系統資源不足。請修改您的問題以包含您的代碼。 –

+0

你怎麼能說你的活動被破壞?你在logcat中看到了該活動的堆棧跟蹤嗎? – user370305

回答

8

這是當你需要使用的標誌。爲了使先前開始的活動返回到堆棧頂部,您需要將i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);標誌添加到您的意圖中,然後啓動該活動 - startActivity(i),'i'是意圖名稱。
其他國旗的名單看看here

+0

這正是我需要的,謝謝! – ayelder

+0

謝謝。它爲我工作。 –

相關問題