CheckBox的使用
1.什么是ChexkBox?
复选框允许用户在同一个组中选择一个或对个选项。
2.ChexBox的使用
CheckBox的监听事件:setOnChekedChangeListener(),当checkbox选中的状态改变的时触发的监听。
需求:选中checkbox时提示选中的文本信息,点击确定按钮时显示最终的选中文本信息,实现全选功能
(1)先绑定checkbox的状态监听事件,选中某一项时给出提示
(2)然后绑定按钮的点击事件,点击时判断最终选中的checkbox,将选中的文本给出提示。
(3)实现全选功能
全选
如果所有的checkbox全被选中则 全选被选中
如果全选被选中则所有的checkbox均被选中
如果取消全选则所有的checkbox都取消
代码:
.xml文件中的代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextViewandroid:id="@+id/tv_name"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:text="请选择你的爱好:" /><CheckBoxandroid:id="@+id/cb1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="敲代码" /><CheckBoxandroid:id="@+id/cb2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="游泳" /><CheckBoxandroid:id="@+id/cb3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="唱歌" /><Buttonandroid:id="@+id/btn1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="确定" android:onClick="click"/><CheckBoxandroid:id="@+id/all_cb"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="全选" android:onClick="click"/></LinearLayout>
activity文件中的代码
public class MainActivity extends ActionBarActivity {
// 声明控件p
rivate CheckBox cb1, cb2, cb3;
private MyOnChekedChangeListener listener;private CheckBox all_cb;
@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 关联空件cb1 = (CheckBox) findViewById(R.id.cb1);cb2 = (CheckBox) findViewById(R.id.cb2);cb3 = (CheckBox) findViewById(R.id.cb3);// 设置监听(以内部类的形式设置监听事件)listener = new MyOnChekedChangeListener();cb1.setOnCheckedChangeListener(listener);cb2.setOnCheckedChangeListener(listener);cb3.setOnCheckedChangeListener(listener);all_cb=(CheckBox) findViewById(R.id.all_cb);//点击确定按钮监听事件
public void click(View view){switch(view.getId()){case R.id.btn1:String str=check();Toast.makeText(MainActivity.this,"选中的是"+str, Toast .LENGTH_SHORT).show();break;//当点击 了全选按钮,则checkbox全部被选中case R.id .all_cb:boolean bl=all_cb.isChecked();cb1.setChecked(bl);cb2.setChecked(bl);cb3.setChecked(bl);break;}//定义一个方法,获取checkbox最终选中的文本
public String check(){//设置一个字符串缓冲区,你选中的是什么就可以存到缓冲区里面StringBuilder sb=new StringBuilder();if(cb1.isChecked()){sb.append(cb1.getText().toString());//表示追加,将选中的内容添加到缓冲区}if(cb2.isChecked()){sb.append(cb2.getText().toString());//表示追加,将选中的内容添加到缓冲区}if(cb3.isChecked()){sb.append(cb3.getText().toString());//表示追加,将选中的内容添加到缓冲区}return sb.toString();//返回值是缓冲区的内容
}// 内部类形式设置监听事件
class MyOnChekedChangeListener implements OnCheckedChangeListener {@Overridepublic void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {// CompoundButton buttonView:表示当前状态切换的控件对象,其返回值是一个buttonView,所以要强转// boolean isChecked 表示当前控件的选中状态//获取选中状态的文本并且给出提示// if(isChecked){// CheckBox cb = (CheckBox) buttonView;
// String str = cb.getText().toString();// 获取选中的内容
// Toast.makeText(MainActivity.this, “选中的是” + str, Toast.LENGTH_SHORT)
// .show();
// }
//如果发现列表中的checkbox全部被选中则全选被选中,否则全选不被选中
if(cb1.isChecked()&&cb2.isChecked()&&cb3.isChecked()){
all_cb.setChecked(true);
}else{all_cb.setChecked(false);}}}
}
CheckBox的使用相关推荐
- 点击文字可以选中相应的checkbox
点击文字可以选中相应的checkbox (2008-11-22 14:16:40) 转载▼ 标签: 杂谈 分类: javascript 转载: 这是一个例子: <html> <hea ...
- Android CheckBox 点击的时候没有效果
写了一个CheckBox 点击的时候没有效果 感觉莫名其妙的,最后在xml 中设置了 android:clickable="true" 点击有效果了, 见鬼了.
- Android CheckBox 修改选择框
效果图 是否被选中打印效果图图 CheckBox 是多选框 ,选中之后可以再次点击取消操作. 在使用的时候注意padding 是相对于字体来的不是相对选择框 下面第一个位置调整了 使用了paddin ...
- ASP.NET MVC3 在WebGrid中用CheckBox选中行
分三步走 1.保证你的webgrid包含在form中 @using (Html.BeginForm("Assign","Home")) { } 2.在webgr ...
- ASP.NET DEMO 14: 如何在 GridView/DataGrid 模板列中使用自动回发的 CheckBox/DropDownList
有时候希望在 GridView 模板中使用自动回发的 CheckBox (autopostback=true) ,但是 CheckBox 没有 CommandName 属性,因此也就无法在 GridV ...
- 用js 判断datagrid 中的 checkbox 是否被选中
private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 ...
- CSS3重新定义input中呆若木鸡的默认复选框CheckBox和单选框Radio样式
<!DOCTYPE html> <html> <head><meta charset="UTF-8"><style>/* ...
- 手把手教你如何扩展GridView之自带CheckBox
我们在使用GridView的时候,很多时候需要使用CheckBox列,比如批量删除,批量审批,但是每每都需要记住繁琐的实现方法.多麻烦呀!再次给GridView做个手术,让它自己就能产生CheckBo ...
- 自己开发开源jquery插件--给jquery.treeview加上checkbox
很多时候需要把树状的数据显示除来,比如分类,中国省份.城市信息,等,因此这方面的javascript插件也有很多.比如性能优异的jquery.treeview和国人开发的功能强大的zTree. 我最近 ...
- 【转帖】如何通过 javascript 访问 GridView/DataGrid 选中 CheckBox 行各列的值
功能需求 1, 单击 checkbox 返回当前行值 2, 外部按钮获取所有选择行的值 实现说明 参见主要代码,代码为自说明式. 原文地址:http://www.cnblogs.com/Jingl ...
最新文章
- 2021牛客多校6 - Hopping Rabbit(矩形取模+扫描线)
- 前端学习(2795):实现样式的左侧结构和样式
- python语言例子_【Python】SimPy的使用示例-Go语言中文社区
- 2 数据源配置_如何在程序运行中动态切换数据源?架构师必读秘笈
- MongoDB基本用法
- 真不好意思,关于小猪妹(妖精)的
- C++11常见新特性
- 关于.NET异常 你应该知道的更多点
- linux系统 nvme驱动模块,Linux 5.5最终通过HWMON公开NVMe驱动器温度
- android 无损分区,有什么可行办法把安卓4.4用的tf卡第一个分区从fat32无损转换成ext4?...
- 2022“杭电杯”中国大学生算法设计超级联赛(5)杭电多校第五场
- pacman 升级软件包提示 “failed to commit transaction (invalid or corrupted package)“
- 33.什么是wildcard(通配符)查询?如何进行通配符查询?如何使用java进行wildcard (通配符)查询?嘻哈的简写笔记——Elastic Search
- Python之——获取电脑连接过的所有wifi名称和密码
- HDMI+VGA+USB3.0+PD3.0四合一多功能扩展坞|type c 扩展坞接口功能说明
- 哪款蓝牙耳机品质好?音质好的四款蓝牙耳机测评
- 欧姆龙CK3M与松下A6伺服驱动配置——位置模式
- python 批量修改文件名_Python 批量修改文件名
- html分享微信qq等,h5移动端调用微信好友,朋友圈,QQ好友,QQ空间等APP分享功能...
- Win8卸载2345看图王
热门文章
- CUDA RuntimeError: CUDA error: an illegal memory access was encountered
- win pear php7.1,windows上应用pear安装php扩展 - libevent
- 空调风扇内机不转故障分析与检修
- Genymotion3.0+virtualbox6.0安装包
- 安卓用户初次体验微信公众号信息流改版
- 《Clean Code》读书笔记-1
- Mysql复制数据库--star.Hou
- FCKeditor相关问题
- C语言双引号A单引号A,C语言查漏补缺——单引号和双引号
- 契约锁助力上市公司IPO申报 信息披露、重大事项决策等文件网上签