PreferenceActivity 參數設置UI的使用

 Android 爲了方便管理SharedPreferences,爲我們提供了一個很簡潔高效的PreferenceActivity。通過繼承PreferenceActivity這個類,我們很輕鬆的就能實現一個程序參數設置的UI界面。

具體步驟如下:

1.添加Preference的佈局,在 /res/xml/目錄下添加一個settings.xml文件,內容如下:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <referenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
  3.         android:title="Settings">
  4.         <CheckBoxPreference android:title="android with google"
  5.                 android:key="android"></CheckBoxPreference>
  6.         <referenceCategory android:title="eoe">
  7.                 <ListPreference android:title="eoeList"
  8.                         android:summary="Set eoe Options" android:key="eoe"
  9.                         android:dialogTitle="Choose eoe Options" android:entries="@array/androidBook"
  10.                         android:entryValues="@array/androidBook"></ListPreference>
  11.         </PreferenceCategory>
  12. </PreferenceScreen>
複製代碼


2. 生成一個SettingsActivity繼承自PreferenceActivity。

  1. public class SettingsActivity extends PreferenceActivity {
  2.         @Override
  3.         protected void onCreate(Bundle savedInstanceState) {
  4.                 // TODO Auto-generated method stub
  5.                 super.onCreate(savedInstanceState);
  6.                 addPreferencesFromResource(R.xml.settings);
  7.         }

  8. }
複製代碼


3.添加R.xml.settings佈局文件
addPreferencesFromResource(R.xml.settings)

4.當程序運行後,會生成/data/data/[PACKAGE_NAME]/shared_prefs/[PACKAGE_NAME]_preferences.xml 參數配置文件。
com.eoeandroid.book_preferences.xml
  1. <?xml version='1.0' encoding='utf-8' standalone='yes' ?>
  2. <map>
  3. <boolean name="android" value="false" />
  4. <string name="eoe">eoemarket</string>
  5. </map>
複製代碼


5.獲得SharedPreferences引用
  1. SharedPreferences sp = getPreferenceManager().getDefaultSharedPreferences(this);
複製代碼

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