簡體   English   中英

(savedInstanceState)是什么意思

[英]What does (savedInstanceState) mean

在我的主要活動中有一些代碼說

if (savedInstanceState != null) {
            mCurrentSelectedPosition = savedInstanceState.getInt(STATE_SELECTED_POSITION);
            mFromSavedInstanceState = true;

我不太明白(savedInstanceState)在這段代碼中的含義。 有人可以告訴我在這種情況下它意味着什么,因為我有點像菜鳥,我想了解代碼,以便我可以學習它,理解它,甚至在需要時復制它。

引用自( http://developer.android.com/training/basics/activity-lifecycle/recreating.html ):

在某些情況下,您的活動會因應用程序的正常行為而被銷毀,例如當用戶按下“返回”按鈕或您的活動通過調用finish()發出自己的銷毀信號時。 如果系統當前已停止且未長時間使用或前台活動需要更多資源,系統也可能會破壞您的活動,因此系統必須關閉后台進程才能恢復內存。

此外,如果您將應用程序的狀態保存在一個包中(通常是onSaveInstanceState中的非持久性動態數據),如果需要重新創建活動(例如,方向更改),則可以將其傳遞回onCreate,這樣您就不會丟失此先前信息。 如果未提供數據,則savedInstanceState為null。

如果您的活動在后台,如果內存不足,Android操作系統可能決定終止包含此活動的進程。 要處理這種可能性,您可以在Bundle中保持Activity的狀態。

如果您返回到已被殺死的Activity,則持久狀態將傳遞給savedInstanceState參數中的Activity的onCreate 這將允許您將活動恢復到其上一個狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM