CheckBoxPreference 选中为true 取消选中为false 它的值会以boolean的形式储存在SharedPreferences中。

  • <?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;
  • }
  • });
  • }
  • }

CheckBoxPreference组件的更多相关文章

  1. Android 软件开发之 PreferenceActivity 中的组件

    1.PreferenceActivity 介绍 PreferenceActivity 继承ListActivity 它是以一个列表的形式在展现内容,它最主要的特点是添加Preference可以让控件的 ...

  2. 转:Android软件开发之PreferenceActivity中的组件

    本文转于 “雨松MOMO的程序世界” 博客,请务必保留此出处http://xys289187120.blog.51cto.com/3361352/656784 1.PreferenceActivity ...

  3. PreferenceActivity 自动保存属性

    package com.example.preference; import android.content.Context; import android.os.Bundle; import and ...

  4. ExtJS 4.2 评分组件

    上一文章是扩展ExtJS自带的Date组件.在这里将创建一个评分组件. 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2上的一个RatingStar ...

  5. react组件的生命周期

    写在前面: 阅读了多遍文章之后,自己总结了一个.一遍加强记忆,和日后回顾. 一.实例化(初始化) var Button = React.createClass({ getInitialState: f ...

  6. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  7. Angular2入门系列教程3-多个组件,主从关系

    上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...

  8. Angular2入门系列教程2-项目初体验-编写自己的第一个组件

    上一篇 使用Angular-cli搭建Angular2开发环境 Angular2采用组件的编写模式,或者说,Angular2必须使用组件编写,没有组件,你甚至不能将Angular2项目启动起来 紧接着 ...

  9. .NET Core 首例 Office 开源跨平台组件(NPOI Core)

    前言 最近项目中,需要使用到 Excel 导出,找了一圈发现没有适用于 .NET Core的,不依赖Office和操作系统限制的 Office 组件,于是萌生了把 NPOI 适配并移植到 .NET C ...

随机推荐

  1. iptables or netfilter

    netfilter 内部有三个表:filter .nat .mangle 每个表又有不同的操作链: 1.在filter这个防火墙功能的表中有三个chain:INPUT.FORWARD.OUTPUT. ...

  2. A canvas fillText and strokeText example

    A canvas fillText and strokeText example A canvas fillText and strokeText example

  3. linux 修改文件、文件夹权限

    # change owner of all the fies under dirName chown -R username dirName #change owner and the file gr ...

  4. Android手机APN设置(中国移动 联通3G 电信天翼),解决不能上网的问题

    中国移动 第一步,设置CMNET上网 新建APN 1.名称:cmnet 2.APN:cmnet 3.APN类型:default 就仅仅填写上面3个选项,其它都是默认,不用填写. 第二步,设置彩信 新建 ...

  5. tomcat使用说明

    tomcat使用说明   1.tomcat的目录结构及说明: 2.发布WEB应用 1).将应用目录达成war包.(将html.jsp.images.WEB-INF目录和当前目录下的所有后缀名为jsp. ...

  6. RMAN数据库恢复之恢复归档日志文件

    恢复归档日志文件如果只是为了在恢复数据文件之后应用归档文件,那并不需要手动对归档文件进行恢复,RMAN会在RECOVER时自动对适当的归档进行恢复.单独恢复归档文件一般是有特别的需求,如创建了Data ...

  7. PHP学习笔记一

    <html> <head> <title></title> <meta http-equiv="content-type" c ...

  8. java替换字符串和用indexof查找字符

    java自带替换 String s="hlz_and_hourui哈哈"; String new_S=s.replaceAll("哈", "笑毛&qu ...

  9. 使用CSC.EXE编译第一个HELLO WORLD

    坐的没事,下了个C#2008,看帮助文件写了个HELLO.CS的源文件: //hello.cs //Show "Hello Word!" using system; class h ...

  10. WCF如何在浏览器访问

    1.新建wcf服务看到有如下两个方法,在浏览器调用框中的方法.