2011-08-22 175 views
2

我閱讀了有關活動堆棧和在論壇上搜索答案的文檔,但找不到解決方案。 我有活動A(這是一個ImageView)和活動B(是一個GridView)。當用戶點擊GridView活動A中的某張圖片時,會打開相應的圖片。替換活動堆棧中的活動

所以我在活動摞這樣的情況在GridView中選擇另一張照片後: ... - > A(圖1) - > B(網格) - > A(圖2)

但我想有:... - > B(網格) - A(圖2)

我嘗試了不同的啓動模式: 如果A是一個singleInstance - 選擇在網格中的任何圖片後,活性的舊圖像 如果打開A是singleTask - 我得到的情況:A(圖片1) - > B(網格) - > A(圖2)

任何人可以給我一個POI nt如何以我需要的方式管理我的活動?

謝謝

回答

2

重寫活動A的onPause()並調用finish();

因此「返回」時被壓在ImageView的它將從堆棧中取出。

那麼你的籌碼將永遠只能是:網格 - >圖像

此外,如果你的活動發送到後臺(與home鍵),你的籌碼是:電網

+0

謝謝你的回答!它真的適合我。但有沒有辦法解決這個問題,而不會覆蓋onPause(onStop等)? – Infernus

+0

重寫onPause():-)是正確的,這是他們在那裏。向下滾動到這裏的生命週期以獲取最新的內容:http://developer.android.com/reference/android/app/Activity.html如果此問題得到解決,請將問題標記爲已回答。 (在0下面的答案左邊按下綠色勾號)這有助於他人。 – Blundell

+0

onPause()存在問題 - 活動將在離開活動後完成A)但是我需要活動A只有當我用新信息啓動A時纔會完成活動。直到那時我需要A在活動堆棧中。你知道這個問題的解決方案嗎? 我會很感激。 – Infernus

0

你需要完成你的活動A當你回到B時,我假設你沒有使用標準的後退機制,並打開另一個活動B因此你的問題。