2015-06-07 37 views
1

在檢查有關使用onSaveInstanceState的文檔時,彈出一個問題。重新創建的活動是否記得原來的意圖啓動了它?

假設我正在使用具有多項活動的應用程序,現在我處於由上一個活動啓動的特定活動中。當前活動接受前一個值的額外值。

如果我接到電話,然後導航回活動,它將被重新創建。但是它會記住上一次活動的初衷嗎?重新創建後它能夠從中獲得額外的變量嗎?

爲了簡化問題:

活動A開始活動B(並傳遞到額外的話)。然後(在B時)有一個來電。 我回到了應用程序,所以B被重新創建 - 我仍然能夠從原始活動A中獲得額外物品嗎?

謝謝:)

回答

2

是會,檢查最簡單的方法是旋轉第二個活動運行時的屏幕,它會被銷燬,重建和u會發現,你仍然可以得到臨時演員。嘗試一下,看看你自己的。

1

是的,它會是一樣的意圖。

另外,只是爲了闡明,當您離開活動B接聽電話並回去時,活動B不一定會重新創建。只有包含它的進程被殺死才能回收資源時,它纔會被重新創建。它通常發生在你描述的場景中,活動B仍然存在。

對於類似的討論,請參閱: Android - Is the intent preserved during activity recreation?

相關問題