1)ChexkBox继承自CompoundButton组件;

2)isChecked()--确定是否选中;setChecked(bool checked)--设置选中或取消选中;

3)监听事件:CompoundButton.OnCheckedChangeListener

使用checkbox,并实现监听测试:

1)效果:

2)源代码:

res\layout\activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity" ><CheckBoxandroid:id="@+id/cbJava"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_marginLeft="27dp"android:text="Java Runtime 9.0" /><TextViewandroid:id="@+id/tvCheckedValue"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignLeft="@+id/cbJava"android:layout_below="@+id/cbPython"android:layout_marginLeft="14dp"android:layout_marginTop="54dp"android:text="" /><CheckBoxandroid:id="@+id/cbPython"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignLeft="@+id/cbJava"android:layout_below="@+id/cbJava"android:layout_marginTop="22dp"android:text="Python runtime2.7" /></RelativeLayout>

View Code

MainActivity.java

  1 package com.example.helloword;
  2
  3 import java.text.BreakIterator;
  4
  5 import android.R.bool;
  6 import android.R.string;
  7 import android.app.Activity;
  8 import android.app.AlertDialog;
  9 import android.content.DialogInterface;
 10 import android.content.DialogInterface.OnClickListener;
 11 import android.os.Bundle;
 12 import android.renderscript.Script.KernelID;
 13 import android.test.IsolatedContext;
 14 import android.util.Log;
 15 import android.view.KeyEvent;
 16 import android.view.Menu;
 17 import android.view.View;
 18 import android.widget.Button;
 19 import android.widget.CheckBox;
 20 import android.widget.CompoundButton;
 21 import android.widget.EditText;
 22 import android.widget.ImageView;
 23 import android.widget.RadioButton;
 24 import android.widget.RadioGroup;
 25 import android.widget.TextView;
 26
 27 public class MainActivity extends Activity {
 28     private CheckBox cbJava, cbPython;
 29     private TextView tvCheckedValue;
 30
 31     @Override
 32     protected void onCreate(Bundle savedInstanceState) {
 33         super.onCreate(savedInstanceState);
 34         setContentView(R.layout.activity_main);
 35         this.cbJava = (CheckBox) this.findViewById(R.id.cbJava);
 36         this.cbPython = (CheckBox) this.findViewById(R.id.cbPython);
 37         this.tvCheckedValue = (TextView) this.findViewById(R.id.tvCheckedValue);
 38
 39         CheckBoxOnCheckedChangeListener listener = new CheckBoxOnCheckedChangeListener();
 40
 41         this.cbJava.setOnCheckedChangeListener(listener);
 42         this.cbPython.setOnCheckedChangeListener(listener);
 43
 44     }
 45
 46     private StringBuffer stringBuffer;
 47
 48     private class CheckBoxOnCheckedChangeListener implements
 49             CompoundButton.OnCheckedChangeListener {
 50         private String checkJava = cbJava.getText().toString() + " ";
 51         private String checkPython = cbPython.getText().toString() + " ";
 52         private StringBuffer stringBuffer = new StringBuffer();
 53
 54         @Override
 55         public void onCheckedChanged(CompoundButton compoundButton,
 56                 boolean ischecked) {
 57             switch (compoundButton.getId()) {
 58             case R.id.cbJava:
 59                 Log.i("info", "operator " + cbJava.getText());
 60                 break;
 61             case R.id.cbPython:
 62                 Log.i("info", "operator " + cbPython.getText());
 63                 break;
 64             default:
 65                 break;
 66             }
 67
 68             if (compoundButton == cbJava) {
 69                 changeValue(ischecked, checkJava);
 70             } else if (compoundButton == cbPython) {
 71                 changeValue(ischecked, checkPython);
 72             }
 73
 74             tvCheckedValue.setText(stringBuffer.toString());
 75         }
 76
 77         private void changeValue(boolean ischecked, String checkValue) {
 78             int start = stringBuffer.indexOf(checkValue);
 79             int end = start + checkValue.length();
 80             if (ischecked) {
 81                 if (start == -1) {
 82                     stringBuffer.append(checkValue);
 83                 }
 84             } else {
 85                 if (start != -1) {
 86                     stringBuffer.delete(start, end);
 87                 }
 88             }
 89         }
 90     }
 91
 92     @Override
 93     public boolean onCreateOptionsMenu(Menu menu) {
 94         // Inflate the menu; this adds items to the action bar if it is present.
 95         getMenuInflater().inflate(R.menu.main, menu);
 96         return true;
 97     }
 98
 99     @Override
100     public boolean onKeyUp(int keyCode, KeyEvent event) {
101         // 当点击回退时,弹出该窗口(也就相当于关闭操作)
102         if (keyCode == KeyEvent.KEYCODE_BACK) {
103             new AlertDialog.Builder(this).setTitle("是否退出?")
104                     .setPositiveButton("确定", new OnClickListener() {
105                         @Override
106                         public void onClick(DialogInterface arg0, int arg1) {
107                             finish();
108                         }
109                     }).setNegativeButton("取消", null).show();
110             return true;
111         }
112         return super.onKeyUp(keyCode, event);
113     }
114 }

Android:CheckBox控件相关推荐

  1. android cbox listview特效,关于Listview和Checkbox控件嵌套出现的各种问题(Recyclerview也适用)...

    前言 随着安卓开发的深入了解,越来越发现,很多看似简单的东西,在没有思路的情况下,盲目去写,会发现写到最后,连自己都感觉各种漏洞和问题, 其实这个问题也是我的亲身经历, 当初我在面对Listview和 ...

  2. Android开发CheckBox控件,全选,反选,取消全选

    在Android开发中我们经常会使用CheckBox控件,那么怎么实现CheckBox控件的全选,反选呢 首先布局我们的界面: <?xml version="1.0" enc ...

  3. 一个Demo让你掌握Android所有控件

    一个Demo让你掌握Android所有控件 原文:一个Demo让你掌握Android所有控件 本文是转载收藏,侵删,出处:"安卓巴士"      下面给出实现各个组件的源代码: 1 ...

  4. Android提供了哪些主要UI控件,Android必备:Android UI控件的了解与学习

    因为工做须要,最近一段时间,须要进行Android App开发的学习,以前简单的进行过Android的了解,对于基本的Android环境的搭建等已经有过整理,一个Android App是由一个或多个A ...

  5. Android常用控件有哪些?如何使用?

    Android常用控件介绍及使用 控件 TextView 显示文字,相当于Panel ImageView 显示图片 EditText 输入框,可编辑,可设置软键盘方式 Button 按钮,可附带图片 ...

  6. Android开源控件收集整理

    一 .基本控件 TextView HTextView 一款支持TextView文字动画效果的Android组件库.GitHub - hanks-zyh/HTextView: Animation eff ...

  7. Android 原生控件之一 TextView

    Android 原生控件之一 TextView 前言 来源 开始 XML属性 1.android:allowUndo 2.android:autoLink 3.android:autoSizeMaxT ...

  8. Android - UI 控件

    输入控件是应用程序用户界面中的交互式组件. Android 提供了多种可以在 UI 中使用的控件,例如按钮.文本字段.搜索栏.复选框.缩放按钮.切换按钮等等. 用户界面元素 View 视图是一个在屏幕 ...

  9. checkbox控件使用

    checkbox(复选框),用于多个选择选中或者多个选择不选等情况下使用,例如你喜欢吃的水果可有多种,或者都没有,也可以只有一种.checkbox控件其实就是一个button并附带一个可以检测目前是否 ...

  10. 选择DataGrid中的CheckBox控件后该行背景变色

    在网络开发中,经常遇到需要使用ASP.NET与JavaScript联合进行控制的情况.在本篇中,将使用DataGrid进行数据绑定,使用Javascript控制当选中其中的checkbox时,该行颜色 ...

最新文章

  1. 这12大管理原则,经营者必知
  2. 页面适配的小栗子 - github
  3. java温度计的实现_echart 之实现温度计
  4. 微软(MS Dynamics SL)Solomon 承包商用户2006年度会议!
  5. 获取某个日期是一年中的第几周
  6. 参数php_PHP多参数方法的重构
  7. 关于Eclipse的常用快捷键
  8. Java静态代理类的特点和示例
  9. ./configure --prefix --with解释
  10. CentOS-6.3安装配置Tomcat-7
  11. 基于MATLAB的机械振动合成规律研究,基于MATLAB的机械振动分析研究
  12. pip 安装GPU版本pytorch 与cuda下载
  13. 如何使用Joplin搭建私有笔记软件
  14. 思维导图网页版推荐,这两个网站建议收藏
  15. 【Echarts】数值标签在柱状图上的横向纵向样式调整及数值标签超出图表范围向柱体内部调整移动
  16. 【BZOJ】【P1135】【POI2009】【Lyz】【题解】【线段树+Hall定理】
  17. 苹果弃用 3D Touch!
  18. 非线性规划MATLAB求解原理,专题六--非线性规划介绍及其Matlab求解方法.ppt
  19. 2018年9月份面试小记
  20. 逛画展(二分+队列)

热门文章

  1. Windows 2008-IIS 7.0-SSL操作大全
  2. 广药谋定中国农民丰收节交易会-万祥军:谋定乡村振兴基金
  3. 使用脚本安装elasticsearch7.3的记录
  4. 了解vue里的Runtime Only和Runtime+Compiler
  5. 51单片机学习笔记(郭天祥版)(4)——练习、动态扫描、练习、数码管消影...
  6. django-5-自定义模板过滤器及标签
  7. Django 之多对多关系
  8. Kubernetes网络方案Flannel的学习笔记
  9. Codeforces Round #484 (Div. 2) A. Row
  10. 最小公倍数 最大公约数