Android之首选项相关 Preferences(二)


上一节我们介绍了下ListPreference的用法。这里我们再介绍下其他几个首选项的用法:

CheckBoxPreference:

效果如上。代码很简单:

activity中:

  1. package cn.com.chenzheng_java.pref;   
  2.   
  3. import Android.os.Bundle;   
  4. import android.preference.PreferenceActivity;   
  5. /**  
  6.  * @description 有关首选项preferences的研究  
  7.  * @author chenzheng_java  
  8.  * @since 2011/03/29  
  9.  */  
  10. public class MyPreferencesActivity extends PreferenceActivity {   
  11.     @Override  
  12.     public void onCreate(Bundle savedInstanceState) {   
  13.         super.onCreate(savedInstanceState);   
  14.      addPreferencesFromResource(R.xml.checkbox);   
  15.       
  16.     }   
  17. }  

res/xml/checkbox.xml布局文件

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <PreferenceScreen  
  3.   xmlns:android="http://schemas.android.com/apk/res/android"  
  4.   android:title="屏幕标题"  
  5.   android:key="mycheckbox_screen"  
  6.   android:summary="复选框介绍"  
  7.   >  
  8.      
  9.   <CheckBoxPreference  
  10.     android:key="shandong"  
  11.     android:title="山东"  
  12.     android:summaryOn="山东被选中了"  
  13.     android:summaryOff="山东未被选中"  
  14.   ></CheckBoxPreference>  
  15.      
  16.   <CheckBoxPreference  
  17.     android:key="shanghai"  
  18.     android:title="上海"  
  19.     android:summaryOn="上海被选中了"  
  20.     android:summaryOff="上海未被选中"  
  21.   ></CheckBoxPreference>  
  22.      
  23.   <CheckBoxPreference  
  24.     android:key="yunnan"  
  25.     android:title="云南"  
  26.     android:summaryOn="云南被选中了"  
  27.     android:summaryOff="云南未被选中"  
  28.   ></CheckBoxPreference>  
  29.      
  30. </PreferenceScreen>  

用法和ListPreference相比,简单多了,这里就不多介绍了,这里我给大家看看后台的xml文件:

cn.com.chenzheng_java.pref_preferences.xml

大家首先注意下,android是怎么给我们命名的,我们的包���cn.com.chenzheng_java加上.pref_preferences哦,有些时候,如果我们不通过继承PreferenceActivity,而是通过activity中的getSharedPreferences方法进行操作时,我们会用到该文件的名称的哦。

文件内容:

  1. <?xml version='1.0' encoding='utf-8' standalone='yes' ?>  
  2. <map>  
  3. <string name="myListPreference">hebei1</string>  
  4. <boolean name="shanghai" value="true" />  
  5. <boolean name="shandong" value="true" />  
  6. </map>  

可以看到,其为我们选择的每一个checkbox项定义了一行数据哦。

相关内容