何谓组织首选项啊,实际上就是为首选项分组!

分组之后,我们首页只显示组名,当我们点击进去的时候,才会显示具体的首选项列表。如图:

 

android之首选项相关 Preferences(二)组织首选项_首选项

代码如下:

    1. <?xml version="1.0" encoding="utf-8"?>   
    2. <PreferenceScreen   
    3.   xmlns:android="http://schemas.android.com/apk/res/android"   
    4.   android:key="edittext_screen"   
    5.   android:title="屏幕标题"   
    6.   android:summary="屏幕简要说明"   
    7.   >   
    8.   <!-- 第一组 -->   
    9.   <PreferenceScreen   
    10.   xmlns:android="http://schemas.android.com/apk/res/android"   
    11.   android:key="edittext_screen"   
    12.   android:title="第一组"   
    13.   android:summary="点击进入第一组首选项"   
    14.   >   
    15.    
    16.   <RingtonePreference   
    17.   android:key="ringtonePreference"   
    18.     android:summary="简要说明"   
    19.     android:title="选择系统铃声"   
    20.     android:ringtoneType="alarm"   
    21.     android:showSilent="true"   
    22.   >   
    23.   </RingtonePreference>   
    24.   </PreferenceScreen>   
    25.      
    26.   <!-- 第二组 -->   
    27.   <PreferenceScreen   
    28.   xmlns:android="http://schemas.android.com/apk/res/android"   
    29.   android:key="edittext_screen"   
    30.   android:title="第二组"   
    31.   android:summary="点击进入第二组首选项"   
    32.   >   
    33.    <EditTextPreference   
    34.     android:dialogTitle="输入您的名称:"   
    35.     android:key="editTitlePreference"   
    36.     android:summary="简要说明"   
    37.     android:title="输入名称"   
    38.   ></EditTextPreference>   
    39.   </PreferenceScreen>   
    40.      
    41.   <!-- 第三组 -->   
    42.   <PreferenceScreen   
    43.   xmlns:android="http://schemas.android.com/apk/res/android"   
    44.   android:key="edittext_screen"   
    45.   android:title="第三组"   
    46.   android:summary="点击进入第三组首选项"   
    47.   >   
    48.    <EditTextPreference   
    49.     android:dialogTitle="输入您的名称:"   
    50.     android:key="editTitlePreference"   
    51.     android:summary="简要说明"   
    52.     android:title="输入名称"   
    53.   ></EditTextPreference>   
    54.   </PreferenceScreen>   
    55.      
    56. </PreferenceScreen>   

以上的这种方法适合首选项的数目较多时使用。

如果我们首选项的数目较少,但是我们依旧想为他们分组下,怎么办呢?

我们可以将上面代码中的嵌套PreferenceScreen改为PreferenceCategory,就这么简单!!!

 

  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <PreferenceScreen   
  3.   xmlns:android="http://schemas.android.com/apk/res/android"   
  4.   android:key="edittext_screen"   
  5.   android:title="屏幕标题"   
  6.   android:summary="屏幕简要说明"   
  7.   >   
  8.   <!-- 第一组 -->   
  9.   <PreferenceCategory   
  10.   xmlns:android="http://schemas.android.com/apk/res/android"   
  11.   android:key="edittext_screen"   
  12.   android:title="第一组"   
  13.   android:summary="点击进入第一组首选项"   
  14.   >   
  15.    
  16.   <RingtonePreference   
  17.   android:key="ringtonePreference"   
  18.     android:summary="简要说明"   
  19.     android:title="选择系统铃声"   
  20.     android:ringtoneType="alarm"   
  21.     android:showSilent="true"   
  22.   >   
  23.   </RingtonePreference>   
  24.   </PreferenceCategory>   
  25.      
  26.   <!-- 第二组 -->   
  27.   <PreferenceCategory   
  28.   xmlns:android="http://schemas.android.com/apk/res/android"   
  29.   android:key="edittext_screen"   
  30.   android:title="第二组"   
  31.   android:summary="点击进入第二组首选项"   
  32.   >   
  33.    <EditTextPreference   
  34.     android:dialogTitle="输入您的名称:"   
  35.     android:key="editTitlePreference"   
  36.     android:summary="简要说明"   
  37.     android:title="输入名称"   
  38.   ></EditTextPreference>   
  39.   </PreferenceCategory>   
  40.      
  41.   <!-- 第三组 -->   
  42.   <PreferenceCategory   
  43.   xmlns:android="http://schemas.android.com/apk/res/android"   
  44.   android:key="edittext_screen"   
  45.   android:title="第三组"   
  46.   android:summary="点击进入第三组首选项"   
  47.   >   
  48.    <EditTextPreference   
  49.     android:dialogTitle="输入您的名称:"   
  50.     android:key="editTitlePreference"   
  51.     android:summary="简要说明"   
  52.     android:title="输入名称"   
  53.   ></EditTextPreference>   
  54.   </PreferenceCategory>   
  55.      
  56. </PreferenceScreen>   

效果如下:

 

android之首选项相关 Preferences(二)组织首选项_移动开发_02