国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

activity 臨時數據保存和恢復

2019-11-09 15:16:06
字體:
來源:轉載
供稿:網友

在使用app的過程中有可能會發生突發情況,殺死我們的APP?

    突發情況有哪些呢?比如屏幕旋轉,按Home鍵,recreate(),鎖屏,手機內存不夠APP被Kill等,那么有這些情況我們數據還沒來的幾保存應該怎么做呢?Google已經有了辦法了,那就是覆蓋onSaveInstanceState()方法來接受一個Bundle類型的參數,我們可以將該activity的信息和狀態數據存入此Bundle中。這樣,即使該activity在后臺被系統摧毀,然后重新回到前臺的時候,在調用onCreate()方法時,該Bundle對象會傳入onCreate方法的參數中。開發者可以在onCreate中取出自己保存的數據。

比如我有一個recreate 的頁面,需要保存一個臨時變量isSelected來判斷用戶是否點擊了頁面.實現如下:

@OverridePRotected void onSaveInstanceState(Bundle outState) {    super.onSaveInstanceState(outState);    outState.putBoolean("isSelected", isSelected);}那么如何恢復保存的數據呢?onCreate()方法的函數中有一個Bundle saveInstanceState 的參數,沒錯數據就是存儲在這里的
protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    if (savedInstanceState != null) {        isSelected = savedInstanceState.getBoolean("isSelected");    }

在哪里調用saveInstanceState,大家可以在activity的各生命周期打印一下,很簡單的.


上一篇:屏幕適配

下一篇:指定瀏覽器打開網站

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 澜沧| 辽阳市| 湾仔区| 岑溪市| 泽库县| 沙洋县| 股票| 泗洪县| 玉门市| 镇赉县| 项城市| 察隅县| 吴江市| 郁南县| 和顺县| 民勤县| 北碚区| 庆云县| 石狮市| 融水| 达州市| 资溪县| 桦川县| 景泰县| 瓮安县| 镶黄旗| 射洪县| 长春市| 黔西县| 容城县| 仙游县| 泸西县| 方山县| 闽清县| 确山县| 晋城| 奉化市| 旺苍县| 连山| 金川县| 定州市|