日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

有关 onSaveInstanceState() 那点事

發(fā)布時(shí)間:2024/8/26 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 有关 onSaveInstanceState() 那点事 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

有關(guān) onSaveInstanceState() 那點(diǎn)事

我們都知道,按 home 鍵將 APP 壓入后臺(tái)時(shí),會(huì)調(diào)用 onSaveInstanceState() 方法來保存當(dāng)前狀態(tài),并可以在重新回到 APP 時(shí)恢復(fù)。最近做了一些保存和恢復(fù) Activity/Fragment 狀態(tài)的事,總結(jié)了一點(diǎn)經(jīng)驗(yàn)教訓(xùn)。

Activity 與 Fragment 的 savedInstanceState 不能混用。即,在 Fragment 的 onSaveInstanceState() 方法中保存的 bundle,與在 Activity 的 OnCreate() 方法中得到的 bundle 沒有關(guān)系,兩者是獨(dú)立的。但子類中可以通過重寫onSaveInstanceState() 來補(bǔ)充父類中保存的 bundle,Activity、Fragment 皆然。

一些 View 的狀態(tài)會(huì)自動(dòng)保存和恢復(fù),無需手動(dòng)保存/恢復(fù)。比如 EditText 中輸入的文字,按鈕的選中狀態(tài)等。需要注意的是:

  • 只有提供了 android:id 屬性的 View 才會(huì)自動(dòng)保存恢復(fù);

  • View 的 visibility 等屬性似乎并不會(huì)被自動(dòng)恢復(fù);

需要保存的是成員變量。Activity/Fragment 中每個(gè)成員變量都會(huì)被銷毀,因此我們?cè)?onSaveInstanceState() 中需要保存的是這些成員變量。

參考

https://inthecheesefactory.com/blog/fragment-state-saving-best-practices/en

轉(zhuǎn)載于:https://www.cnblogs.com/noodleutopia/p/5912588.html

總結(jié)

以上是生活随笔為你收集整理的有关 onSaveInstanceState() 那点事的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。