Android中preference的使用(二)

來源:互聯網
上載者:User

      繼上篇文章 Android中preference的使用(一) ,在這篇文章中主要是學習下preference中各個節點的屬性。PrefeneceActivity都提供了哪幾種元素可供使用。點擊Add按鈕,在開啟的新視窗中可以看到以下幾項:

1. CheckBoxPreference:CheckBox選擇項,對應的值的ture或flase。

 

2. EditTextPreference:輸入編輯框,值為String類型,會彈出對話方塊供輸入。

 

 

3. ListPreference: 列表選擇,彈出對話方塊供選擇。

 

4. Preference:只進行文本顯示,需要與其他進行組合使用。

 

5. PreferenceCategory:用於分組。效果如下:

 

6. PreferenceScreen:PreferenceActivity的根項目。

 

7. RingtonePreference:系統玲聲選擇。

 

下面我們來分析各個節點的屬性:

PreferenceCategory屬性分析:

title:顯示的標題

key:唯一標識(至少在同一程式中是唯一),SharedPreferences也將通過此Key值進行資料儲存,也可以通過key值擷取儲存的資訊 (以下相同)

CheckBoxPreference屬性分析:

Key:唯一標識

title:顯示標題(大字型顯示)

summary:副標題(小字型顯示)

defaultValue:預設值(當然,此處只能是true或false了)

 

Preference屬性分析: Key:唯一標識.

title:顯示標題(大字型顯示)

summary:副標題(小字型顯示)

dependency:附屬(嘛意思),即標識此元素附屬於某一個元素(通常為CheckBoxPreference),dependency值為所附屬元素的key。上面代碼中的Preference元素附屬於key等於“apply_bluetooth”的CheckPreference元素,當CheckPreference值為true時,Preference則為可用,否則為不可用。

 

EditTextPreperence屬性分析

Key:唯一標識.

title:顯示標題(大字型顯示)

ListPreference屬性分析:

Key:唯一標識.

title:顯示標題(大字型顯示)

dialogTitle:彈出對話方塊的標題

entries:列表中顯示的值。為一個數組,通讀通過資源檔進行設定。

entryValues:列表中實際儲存的值,也entries對應。為一個數組,通讀通過資源檔進行設定。以下代碼顯示的是arrays.xml檔案中內容:

<?xml version="1.0" encoding="utf-8"?><br /><resources><br /><string-array name="department"><br /> <item>綜合部</item><br /> <item>外貿部</item><br /> <item>行政部</item><br /></string-array><br /><string-array name="department_value"><br /> <item>001</item><br /> <item>002</item><br /> <item>003</item><br /></string-array><br /></resources>

 

RingtonePreference 屬性分析

鈴聲(暫時沒有用到過),暫時略過。

 

如何響應PreferenceActivity的操作

只要重寫PreferenceActivity的 onPreferenceTreeClick的方法就可以了,通過參數preference來判斷是對那一個元素進行的,並根據需要進行操作。代碼如下:

@Override<br />public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,<br />Preference preference) {<br />// TODO Auto-generated method stub<br />return super.onPreferenceTreeClick(preferenceScreen, preference);<br />}

這樣到此為止,我們在APP中就實現了設定功能。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.