2010-07-01 39 views
0

我有2個活動在我的應用程序中聲明爲singleTask。其原因是,在標準模式下,在一個活動(例如A)中按下「HOME」並啓動另一個(例如B),仍然顯示活動A.Android:單個應用程序中的多個單任務:問題<HOME>

但是,由此產生了新問題。

A - > 「HOME」 - > B(結果:B,預期結果:B) - > 「BACK」 - >(結果:A,預期結果:主屏幕)

任何想法,爲什麼?

回答

0

有一兩件事沒有意義:在一個活動(比如 A)和啓動

按下 「HOME」 另一個(說B), 仍然顯示活動A.

然而,因此產生了一個新問題,因爲 。

A - > 「HOME」 - > B(結果:B,預期 結果:B)

如果在一個按HOME鍵和啓動乙仍然顯示是被兩個singleTasks你的目標,那麼如何可以A - > HOME - > B對你有預期的結果B嗎?


現在,我將嘗試並幫助:哪個Activity,A或B處理Launcher意圖? (結果:B)會讓我猜測B是那個活動,如果是這樣的話,那麼在你按下HOME之前你在A處會意味着你的棧會是某個東西如B上方的A(A顯示),所以按住Home並啓動B將使堆棧B位於A(B顯示)之上。

然後,如果A和B在一個堆棧中,按BACK可以將您從B下移到A(現在正在顯示A)。這聽起來像是你的問題。

如果您想將它們帶到主屏幕而不是向下移動堆棧,您將需要覆蓋系統的標準後退按鈕處理程序,並且無論何時您需要覆蓋系統機制,這意味着您應該雙倍檢查你所做的是否是真正實現目標的正確方法。

如果您發佈更多信息,我會更新我的答案以幫助您解決這個問題。

相關問題