复选按钮 即可以选择若干个选项,与单选按钮不同的是,复选按钮的图标是方块,单选按钮是圆圈

复选按钮用CheckBox表示,CheckBox是Button的子类,支持使用Button的所有属性

一、由于复选框可以选中多项,所有为了确定用户是否选择了某一项,还需要为每一个选项添加setOnCheckedChangeListener事件监听

例如:

为id为like1的复选按钮添加状态改变事件监听,代码如下

 final CheckBox like1 = (CheckBox)findViewById(R.id.like1);
//监听事件 like1.setOnCheckedChangeListener(new OnCheckedChangeListener()){ @Override
public void onCheckedChanged(CompoundButton arg0, boolean arg1) {
// TODO Auto-generated method stub
if(like1.isChecked())
like1.getText();
}
});

二、使用示例

先看布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择您的爱好"
android:textSize="19dp"
/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_checkbox_1"
android:text="音乐"
/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_checkbox_2"
android:text="美术"
/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_checkbox_3"
android:text="体育"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="提交"
android:id="@+id/btn_checkbox_tijiao"
/>
</LinearLayout>

效果图:

再看JAVA文件

 package base_ui;

 import com.example.allcode.R;

 import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.Checkable;
import android.widget.CompoundButton;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.Toast; public class Ui_CheckBox extends Activity implements android.widget.CompoundButton.OnCheckedChangeListener{
private Button tijiao;
private CheckBox checkbox_1;
private CheckBox checkbox_2;
private CheckBox checkbox_3;
private OnCheckedChangeListener checkbox_listen ;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.base_ui_checkbox); tijiao = (Button) findViewById(R.id.btn_checkbox_tijiao); checkbox_1 = (CheckBox) findViewById(R.id.id_checkbox_1);
checkbox_2 = (CheckBox) findViewById(R.id.id_checkbox_2);
checkbox_3 = (CheckBox) findViewById(R.id.id_checkbox_3);
tijiao = (Button) findViewById(R.id.btn_checkbox_tijiao); checkbox_1.setOnCheckedChangeListener(this);
checkbox_2.setOnCheckedChangeListener(this);
checkbox_3.setOnCheckedChangeListener(this); tijiao.setOnClickListener(new OnClickListener() { @Override
public void onClick(View v) {
// TODO Auto-generated method stub
String str=""; //存放选中的选项的值
if(checkbox_1.isChecked())
str+=checkbox_1.getText().toString()+" ";
if(checkbox_2.isChecked())
str+=checkbox_2.getText().toString()+" ";
if(checkbox_3.isChecked())
str+=checkbox_3.getText().toString()+" ";
Toast.makeText(Ui_CheckBox.this, "您选择的喜欢的爱好为:"+str, ).show(); }
});
}
//监听事件
@Override
public void onCheckedChanged(CompoundButton arg0, boolean arg1) {
// TODO Auto-generated method stub } }

可以看到,代码是很简单的,只有一个方法需要学习

checkbox_1.isChecked()

返回checkbox_1对应的复选按钮控件是否被选中

效果图:

												

安卓开发_复选按钮控件(CheckBox)的简单使用的更多相关文章

  1. 安卓开发_深入学习ViewPager控件

    一.概述 ViewPager是android扩展包v4包(android.support.v4.view.ViewPager)中的类,这个类可以让用户左右切换当前的view. ViewPager特点: ...

  2. css input checkbox复选框控件 样式美化的多种方案

    checkbox复选框可能是网站中常用的html元素,但大多数人并不满意它的默认样式,这篇文章就讲讲如何实现input checkbox复选框控件 样式美化效果. 资源网站大全 https://55w ...

  3. Java通过复选框控件数组实现添加多个复选框控件

    编写程序,通过复选框控件数组事先选择用户爱好信息的复选框,在该程序中,要求界面中的复选框数量可以根据指定复选框名称的字符串数组的长度来自动调节. 思路如下: 创建JPanel面板对象: 使用JPane ...

  4. CheckBox复选框控件

    CheckBox复选框控件 一.简介 1. 2.类结构图 二.CheckBox复选框控件使用方法 这里是使用java代码在LinearLayout里面添加控件 1.新建LinearLayout布局 2 ...

  5. [js开源组件开发]js多选日期控件

    js多选日期控件 详情请见:http://www.lovewebgames.com/jsmodule/calendar.html 它的github地址:https://github.com/tianx ...

  6. 【Android】11.0 UI开发(二)——列表控件ListView的简单实现1

    ************************ 转载请注明出处:https://www.cnblogs.com/xiaofu007/p/10342462.html ***************** ...

  7. Asp.net自定义单选复选框控件

    将常用的jquery插件封装成控件也是个不错的选择 下面是效果的简单颜色,由于博客系统的限制没法完整演示最终效果,请下载示例查看 Asp.netWeb APIC#Javascript   1.新建类库 ...

  8. 转 纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  9. 【转】纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

随机推荐

  1. [Swift]扩展UIColor:实现十六进制颜色字符串与UIColor之间的相互转换

    对[UIColor]进行扩展 import UIKit extension UIColor { // Hex String -> UIColor convenience init(hexStri ...

  2. Windows10开发手记-Windows App Certification Kit使用教程

    最近有同学通过MVP的渠道询问我Windows 10应用提交审核前是否有工具能够像win7一样做App兼容性测试,其实Windows SDK已经继承了一套优秀的App测试认证工具,这可以帮助我们快速通 ...

  3. Java架构技术进阶之:从分布式到微服务,深挖Service Mesh

    自从几十年前第一次引入分布式系统这个概念以来,出现了很多原来根本想象不到的分布式系统使用案例,但同时也引入了各种各样的新问题. 当这些系统还是比较少比较简单的时候,工程师可以通过减少远程交互的次数来解 ...

  4. 高手速成android开源项目【developer篇】

    主要介绍和Android开发工具和测试工具相关的开源项目. Buckfacebook开源的Android编译工具,效率是ant的两倍.主要优点在于:(1) 加快编译速度,通过并行利用多核cpu和跟踪不 ...

  5. TCP/IP 笔记 - 广播和本地组播

    在之前第二章介绍IP寻址的时候有介绍到,IP地址有4种:单播.组播.广播.任播. 单播,客户端与服务器之间点到点连接通信: 组播,在发送者和多个接收者(如某个特定的分组)之间实现点对多点的连接通信: ...

  6. Oracle的数据并发与一致性详解(下)

    上篇介绍了数据并发与一致性的相关概念.以及oracle的事务隔离级别等内容,本篇继续介绍锁机制.自动锁.手动锁.用户自定义锁的相关内容. 请尊重作者劳动成果,转载请标明原文链接: https://ww ...

  7. HDFS集群数据不均衡处理

    一.概述 公司使用是自己搭建的hadoop集群,版本2.7.3,最近发现出现了hdfs数据存储不均衡的现象,其中有一个datanode使用了65%,而有一个只使用了20%.hadoop集群使用的时间长 ...

  8. mysql主从复制总结

    第一步:开启所有MYSQL服务器的BIN日志,每台服务器设置一个唯一的server-id的值(默认是1,一般取IP最后一段) 修改主服务器(master)的my.cnf [mysqld] log-bi ...

  9. C#中的Action和Func和Predicate

    一.[action<>]指定那些只有输入参数,没有返回值的委托 用了Action之后呢: 就是相当于省去了定义委托的步骤了. 演示代码: using System; using Syste ...

  10. 修改git分支名称

    场景:将分支名称为 oldbranch 改为 newbranch 步骤: 1.将本地分支oldbranch切一个分支到本地 git branch -m oldbranch newbranch 2.删除 ...