main.xml:

  1. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools"
  3. android:id="@+id/LinearLayout1"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent"
  6. android:orientation="vertical"
  7. android:paddingBottom="@dimen/activity_vertical_margin"
  8. android:paddingLeft="@dimen/activity_horizontal_margin"
  9. android:paddingRight="@dimen/activity_horizontal_margin"
  10. android:paddingTop="@dimen/activity_vertical_margin"
  11. tools:context=".MainActivity" >
    <CheckBox
  12. android:id="@+id/eatId"
  13. android:layout_width="wrap_content"
  14. android:layout_height="wrap_content"
  15. android:text="吃饭" />
  16. <CheckBox
  17. android:id="@+id/sleepId"
  18. android:layout_width="wrap_content"
  19. android:layout_height="wrap_content"
  20. android:text="睡觉" />
  21. <CheckBox
  22. android:id="@+id/playDotaId"
  23. android:layout_width="wrap_content"
  24. android:layout_height="wrap_content"
  25. android:text="打dota" />
  26. <CheckBox
  27. android:id="@+id/allCheckId"
  28. android:layout_width="wrap_content"
  29. android:layout_height="wrap_content"
  30. android:text="全选" />
  31. </LinearLayout>

MainActivity.java:

  1. package com.example.allchecked;
  2.  
  3. import android.os.Bundle;
  4. import android.app.Activity;
  5. import android.view.Menu;
  6. import android.view.View;
  7. import android.view.View.OnClickListener;
  8. import android.widget.CheckBox;
  9. import android.widget.CompoundButton;
  10. import android.widget.CompoundButton.OnCheckedChangeListener;
  11.  
  12. public class MainActivity extends Activity {
  13. private CheckBox eatBox;
  14. private CheckBox sleepBox;
  15. private CheckBox playDotaBox;
  16. private CheckBox allCheckBox;
  17.  
  18. @Override
  19. protected void onCreate(Bundle savedInstanceState) {
  20. super.onCreate(savedInstanceState);
  21. setContentView(R.layout.activity_main);
  22. eatBox = (CheckBox)findViewById(R.id.eatId);
  23. sleepBox = (CheckBox)findViewById(R.id.sleepId);
  24. playDotaBox = (CheckBox)findViewById(R.id.playDotaId);
  25. allCheckBox = (CheckBox)findViewById(R.id.allCheckId);
  26.  
  27. AllCheckListener allCheckListener = new AllCheckListener();
  28. allCheckBox.setOnCheckedChangeListener(allCheckListener);
  29.  
  30. CheckBoxListener listener = new CheckBoxListener();
  31. eatBox.setOnCheckedChangeListener(listener);
  32. sleepBox.setOnCheckedChangeListener(listener);
  33. playDotaBox.setOnCheckedChangeListener(listener);
  34.  
  35. /* OnBoxClickListener clicklistener = new OnBoxClickListener();
  36. eatBox.setOnClickListener(clicklistener);
  37. sleepBox.setOnClickListener(clicklistener);
  38. playDotaBox.setOnClickListener(clicklistener);
  39. */
  40. }
  41.  
  42. /* class OnBoxClickListener implements OnClickListener{
  43.  
  44. @Override
  45. public void onClick(View view) {
  46. // TODO Auto-generated method stub
  47. CheckBox box = (CheckBox)view;
  48. if(box.getId() == R.id.eatId){
  49. System.out.println("eatBox");
  50. }
  51. else if(box.getId() == R.id.sleepId){
  52. System.out.println("sleepBox");
  53. }
  54. else{
  55. System.out.println("dotaBox");
  56. }
  57. if(box.isChecked()){
  58. System.out.println("checked");
  59. }
  60. else{
  61. System.out.println("unchecked");
  62. }
  63. }
  64. }*/
  65.  
  66. public class CheckBoxListener implements OnCheckedChangeListener{
  67.  
  68. @Override
  69. public void onCheckedChanged(CompoundButton buttonView,
  70. boolean isChecked) {
  71. // TODO Auto-generated method stub
  72. if(buttonView.getId() == R.id.eatId){
  73. System.out.println("eatBox");
  74. }
  75. else if(buttonView.getId() == R.id.sleepId){
  76. System.out.println("sleepBox");
  77. }
  78. else{
  79. System.out.println("dotaBox");
  80. }
  81. if(isChecked){
  82. System.out.println("checked");
  83. }
  84. else{
  85. System.out.println("unchecked");
  86. }
  87. }
  88.  
  89. }
  90.  
  91. public class AllCheckListener implements OnCheckedChangeListener{
  92.  
  93. @Override
  94. public void onCheckedChanged(CompoundButton buttonView,
  95. boolean isChecked) {
  96. // TODO Auto-generated method stub
  97. eatBox.setChecked(isChecked);
  98. sleepBox.setChecked(isChecked);
  99. playDotaBox.setChecked(isChecked);
  100. }
  101.  
  102. }
  103.  
  104. }

全选按钮的功能还不是很完善,选中上面三个所有,全选按钮不会自动被选中;同时点击全选之后,点击上面某一个不再选中,全选不会自动取消选中。

多选按钮CheckBox的更多相关文章

  1. JQuery 多选按钮checkbox

    JQuery 多选按钮checkbox 在需要全选和选择部分的时候我们就需要多选在这里主要介绍了具体的实现 JQuery $(function () { //全选或全不选 $("#allbo ...

  2. cocos2d-x JS 复选按钮checkBox的单选与多选

    var HZ_createRoom = jx.BaseView.extend({//红中麻将 ctor : function() { this._super(); this.addLayout(res ...

  3. zepto全选按钮之全选会根据按钮是否被全部选中更改状态

    在做手机端二次开发购物车的时候,发现zepto全选,没找到,或者功能不是自己想要的 后来做好,分享给需要的人 //全选或多选处理      var CheckAll = $('#items_check ...

  4. Android开发 ---基本UI组件2:图像按钮、单选按钮监听、多选按钮监听、开关

    Android开发 ---基本UI组件2 1.activity_main.xml 描述: 定义一个按钮 <?xml version="1.0" encoding=" ...

  5. 『心善渊』Selenium3.0基础 — 14、Selenium对单选和多选按钮的操作

    目录 1.页面中的单选按钮和多选按钮 2.判断按钮是否选中is_selected() 3.单选按钮的操作 4.多选按钮的操作 5.选择部分多选按钮的操作 1.页面中的单选按钮和多选按钮 页面中的单选按 ...

  6. checkbox做全选按钮

    1.先写一个html页面,里面写一个全选按钮和几个复选框,实现下面2个要求 (1)点击全选按钮选中时,所有的复选框选中. (2)点击全选按钮取消选中时,所有复选框取消选中. <input typ ...

  7. js做全选,用一个checkbox复选框做多个checkbox复选框的全选按钮,有一个复选框未被选择时,全选按钮的checked就为false

    用一个checkbox复选框做多个checkbox复选框的全选按钮,有一个复选框未被选择时,全选按钮的checked就为false,当所有checkbox都被选中时,全选按钮也被选中. 详解: 有两种 ...

  8. 安卓开发_复选按钮控件(CheckBox)的简单使用

    复选按钮 即可以选择若干个选项,与单选按钮不同的是,复选按钮的图标是方块,单选按钮是圆圈 复选按钮用CheckBox表示,CheckBox是Button的子类,支持使用Button的所有属性 一.由于 ...

  9. 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

    参考文章: 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

随机推荐

  1. python numpy的var std cov研究

    var:表示方差, 即各项-均值的平方求和后再除以N , std:表示标准差,是var的平方根. cov:协方差 ,与var类似,但是除以(N-1) import numpy as np # 构建测试 ...

  2. 不是充许的静态以太网地址,它与vmware保留的mac地址冲突

    不是充许的静态以太网地址,它与vmware保留的mac地址冲突 只需修改vxm文件即可. 第一部,打开vmw的镜像位置,如图. 点击后,打开硬盘,如下 把这个vmx结尾的文件下载,在本地编辑,可用tx ...

  3. JQuery常用CSS操作

    JQuery常用CSS操作 $(elem).css(obj):设置行内样式 $(elem).position():返回相对于父容器位置,只能获取不能设置 $(elem).offset(obj):返回相 ...

  4. C语言-错误处理

    标记程序的运行状态和控制主要有以下几种:break/continue/return/参数的返回值/exit(int n)_exit() atexit((*p)(参数列表)): 1 break:用在开关 ...

  5. Android的界面组件使用之ImageButton和ImageView,ImageSwitcher和GridView

    (一)ImageButton和ImageView ImageButton与Button的功能完全相同,只是ImageButton上显示的是图像,并且每个ImageButton组件都必须指定一个id,以 ...

  6. vagrant up启动centos7时出现"rsync" could not be found on your PATH. Make sure that rsyncis properly ins

    (1)问题1:"rsync" could not be found on your PATH. Make sure that rsyncis properly ins 解决方法: ...

  7. 字符流---Day32

    时隔多久,我又回来写博客了,最近忙于两个课设,五周,搞得头发都不知道掉了多少根了,还没成为程序员就开始掉了,等我成为一名程序员的时候岂不是要秃头了,IT界的人会不会帮我当成大佬了,哈哈哈哈,希望我以后 ...

  8. 在spring boot中使用jasypt对配置文件中的敏感字符串加密

    在spring boot的配置文件application.property(application.yml)文件中常常配置一些密码类的字符,如果用明文则很容易被盗用,可以使用jasypt在配置密码的地 ...

  9. Servlet+Spring+Mybatis初试

    1.导入相关的jar包 druid mybatis mybatis-spring pageHelper mysql驱动包 spring-context-support spring-aspect sp ...

  10. day20-Python运维开发基础(装饰器 / 类中的方法 / 类的方法变属性)

    1. 装饰器 / 类中的方法 / 类的方法变属性 # ### 装饰器 """ 定义:装饰器用于拓展原来函数功能的一种语法,返回新函数替换旧函数 优点:在不更改原函数代码的 ...