Android初級開發(六)——1、SharedPreferences數據存儲

一、SharedPreferences的簡介
很多時候我們開發的軟件需要向用戶提供軟件參數設置功能,例如我們常用的QQ,用戶可以設置是否允許陌生人添加自己為好友。對於軟件配置參數的保存,如果是window軟件通常我們會采用ini文件進行保存,如果是j2se應用,我們會采用properties屬性文件進行保存。如果是Android應用,我們最適合采用什麼方式保存軟件配置參數呢?Android平臺給我們提供瞭一個SharedPreferences類,它是一個輕量級的存儲類,特別適合用於保存軟件配置參數。使用SharedPreferences保存數據,其背後是用xml文件存放數據,文件存放在/data/data//shared_prefs目錄下。

實際上SharedPreferences處理的就是一個key-value(鍵值對)。

獲取SharedPreferences的兩種方式:
1 調用Context對象的getSharedPreferences()方法
2 調用Activity對象的getPreferences()方法
兩種方式的區別:
調用Context對象的getSharedPreferences()方法獲得的SharedPreferences對象可以被同一應用程序下的其他[組件]共享.
調用Activity對象的getPreferences()方法獲得的SharedPreferences對象隻能在該Activity中使用.

SharedPreferences的四種操作模式:
Context.MODE_PRIVATE:為默認操作模式,代表該文件是私有數據,隻能被應用本身訪問,在該模式下,寫入的內容會覆蓋原文件的內容
Context.MODE_APPEND:模式會檢查文件是否存在,存在就往文件追加內容,否則就創建新文件.
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用來控制其他應用是否有權限讀寫該文件.
MODE_WORLD_READABLE:表示當前文件可以被其他應用讀取.
MODE_WORLD_WRITEABLE:表示當前文件可以被其他應用寫入.

二、SharedPreferences的實例
下面我們用一個例子來看一下SharedPreferences的實際使用:
1、需求:我們希望在第一個頁面輸入姓名、性別、學校,然後點擊保存按鈕,將用戶輸入的數據保存並跳轉到第二個界面中,在第二個界面中,點擊讀取數據按鈕,將保存的數據分別讀取並顯示出來。
2、效果預覽

3、開始敲代碼

1)在MainActivity實現第一個界面

 

 

MainActivity的佈局文件activity_main.xml

我截得比較簡單,具體的內容就不展示瞭,一張照片放不下。。

2)在GetDataActivity實現第二個界面

GetDataActivity的佈局文件activity_get_data.xml

You May Also Like