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>  

效果图可就大变样了