Android中SharedPreference實例

     SharedPreference是Android提供的一種輕量級的數據存儲方式,主要用來存儲一些簡單的配置信息,例如,默認歡迎語,登錄用戶名和密碼等。其以鍵值對的方式存儲,使得我們能很方便進行讀取和存入。
     SharedPreference 文件保存在/data/data/<package name>/shared_prefs 路徑下(如/data/data/com.android.alarmclock/shared_prefs/com.android.text_preferences.xml),通過cat命令可以查看文件,如:

     通過Activity自帶的getSharedPreferences方法,可以得到SharedPreferences對象。
     public abstract SharedPreferences getSharedPreferences (String name, int mode);
     name:表示保存後 xml 文件的名稱
     mode:表示 xml 文檔的操作權限模式(私有,可讀,可寫),使用0或者MODE_PRIVATE作爲默認的操作權限模式。

     1.數據讀取:
     通過SharedPreferences對象的鍵key可以獲取到對應key的鍵值。對於不同類型的鍵值有不同的函數:getBoolean,getInt,getFloat,getLong.
     public abstract String getString (String key, String defValue);
     2.數據存入:
     數據的存入是通過SharedPreferences對象的編輯器對象Editor來實現的。通過編輯器函數設置鍵值,然後調用commit()提交設置,寫入xml文件。
     public abstract SharedPreferences.Editor edit ();
     public abstract SharedPreferences.Editor putString (String key, String value);
     public abstract boolean commit ();

 

下面一個實例顯示一個TextView,上面顯示用戶使用該應用的次數。

效果圖如下:

源代碼如下:

main.xml:

TestSharedPreferences.java:

幾點說明:

  1. SharedPreferences的獲取有兩種方法:一是上面提到的通過Activity自帶(本質來講是Context的)的getSharedPreferences方法,可以得到SharedPreferences對象。這種方法的好處是可以指定保存的xml文件名。另一種是通過PreferenceManager.getSharedPreferences(Context)獲取SharedPreferences對象。這種方法不能指定保存的xml文件名,文件名使用默認的:<package name>+"_preferences.xml"的形式,不過如果在一個包裏面採用這種方式需要保存多個這樣的xml文件,可能會亂掉。建議採用第一種指定xml文件名的形式。
  2. 數據的存入必須通過SharedPreferences對象的編輯器對象Editor來實現,存入(put)之後與寫入數據庫類似一定要commit。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章