2013-05-30 229 views
1

想象一下,您有兩個活動 - A和B.您從A開始B.在B中您有一個任務。如果任務已完成,則在想要關閉整個應用程序時,如果未按下回車鍵,則要返回到A.但解僱後,您可以從最近的應用程序菜單恢復B.如果在此之後您需要相同的後退鍵。在兩個活動之間切換

所以我想解僱只有一個活動或整個應用程序(但與恢復可能性)。有沒有辦法實現這一目標?

回答

1

ActivityB覆蓋onBackPressed()如果任務完成,只需撥打super.onBackPressed()將完成ActivityB並返回到ActivityA。否則,要解僱整個應用程序只使用moveTaskToBack(),並不要撥打super.onBackPressed()。當用戶返回到應用程序時,將顯示ActivityB(因爲它尚未完成)。

+0

是的,但是如果moveTaskToBack()被調用,那麼當任務完成時,我將按回來鍵,整個應用程序仍然會被解除。就我所知,沒有辦法將活動B移到堆棧的前面。 – Lingviston

+0

對不起,不明白。如果您的活動堆棧包含「ActivityA-> ActivityB」,並且您將此任務移動到後臺,然後將其帶回前臺,您仍然擁有前面帶有「ActivityB」的「ActivityA-> ActivityB」。請更多解釋你在做什麼。 –

+0

對不起,你是對的:) – Lingviston