CheckBoxPreference 选中为true 取消选中为false 它的值会以boolean的形式储存在SharedPreferences中。
复制代码
2011-9-3 01:13:55 上传
下载附件 (27.8 KB)
- <?xml version="1.0" encoding="utf-8"?>
- <PreferenceScreen
- xmlns:android="http://schemas.android.com/apk/res/android">
- <PreferenceCategory android:title="CheckBoxPreference">
- <CheckBoxPreference android:key="checkbox_0"
- android:title="CheckBox_A"
- android:summary="这是一个勾选框A" >
- </CheckBoxPreference>
- <CheckBoxPreference android:key="checkbox_1"
- android:title="CheckBox_B"
- android:summary="这是一个勾选框B" >
- </CheckBoxPreference>
- </PreferenceCategory>
- </PreferenceScreen>
复制代码
2011-9-3 01:13:55 上传
下载附件 (27.8 KB)
- import android.content.Context;
- import android.os.Bundle;
- import android.preference.CheckBoxPreference;
- import android.preference.Preference;
- import android.preference.PreferenceActivity;
- import android.preference.Preference.OnPreferenceChangeListener;
- import android.preference.Preference.OnPreferenceClickListener;
- import android.widget.Toast;
- public class CheckBoxActivity extends PreferenceActivity {
- Context mContext = null;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- // 从资源文件里添Preferences ,选择的值将会自己主动保存到SharePreferences
- addPreferencesFromResource(R.xml.checkbox);
- mContext = this;
- //CheckBoxPreference组件
- CheckBoxPreference mCheckbox0 = (CheckBoxPreference) findPreference("checkbox_0");
- mCheckbox0.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- //这里能够监听到这个CheckBox 的点击事件
- return true;
- }
- });
- mCheckbox0.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference arg0, Object newValue) {
- //这里能够监听到checkBox中值是否改变了
- //而且能够拿到新改变的值
- Toast.makeText(mContext, "checkBox_0改变的值为" + (Boolean)newValue, Toast.LENGTH_LONG).show();
- return true;
- }
- });
- CheckBoxPreference mCheckbox1 = (CheckBoxPreference) findPreference("checkbox_1");
- mCheckbox1.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- //这里能够监听到这个CheckBox 的点击事件
- return true;
- }
- });
- mCheckbox1.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference arg0, Object newValue) {
- //这里能够监听到checkBox中值是否改变了
- //而且能够拿到新改变的值
- Toast.makeText(mContext, "checkBox_1改变的值为" + (Boolean)newValue, Toast.LENGTH_LONG).show();
- return true;
- }
- });
- }
- }