复选框

复选框允许用户从列表里选择一个或多个选项。通常,你应该在垂直列表中显示每个复选框选项。

在你的布局中通过创建 CheckBox 标签来创建复选框选项。因为用户可以从一组复选框选项里选择多个项目,且每个复选框都是分开管理的,所以你必须为每个复选框注册点击监听器。

响应点击事件


用户选择复选框时,CheckBox 对象会收到on-click事件。

在XML布局文件中的<CheckBox>元素中添加 android:onClick 属性就可以为复选框定义点击事件处理程序了。这个属性的值必须是你调用来响应点击事件的方法名。使用这个布局的 Activity 必须实现相应的方法。

例如,这是个有一对 CheckBox 对象的列表:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"><CheckBox android:id="@+id/checkbox_meat"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/meat"android:onClick="onCheckboxClicked"/><CheckBox android:id="@+id/checkbox_cheese"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/cheese"android:onClick="onCheckboxClicked"/>
</LinearLayout>

在使用这个布局的 Activity 里,下面的方法会为两个复选框处理点击事件:

public void onCheckboxClicked(View view) {// 这个视图现在是否已被选中?boolean checked = ((CheckBox) view).isChecked();// 检查哪个复选框被点击过switch(view.getId()) {case R.id.checkbox_meat:if (checked)// 在三明治上放点肉else// 移除肉break;case R.id.checkbox_cheese:if (checked)// 加点起司else// 我有乳糖不耐症break;// 待办:蔬菜三明治}
}

你在 android:onClick 属性中声明的方法名必须和上面显示的一样,而且这个方法必须是:

  • 公共的
  • 返回void
  • 定义一个 View 作为它唯一的参数(它会作为被点击的 View)

小贴士:如果你需要自己改变复选框状态(比如加载一个保存过的 CheckBoxPreference),那么你可以使用 setChecked(boolean) 或 toggle() 方法达到目的。

Checkboxes(复选框)相关推荐

  1. C#ListView控件添加Checkbox复选框并获取选中的数目,检查checkbox是否勾选

    [转载]原地址:http://blog.csdn.net/lucky51222/article/details/41892429 具体方法 1.添加复选框 并且如下设置 listView1.Check ...

  2. jQuery复选框选中状态更改事件

    本文翻译自:jQuery checkbox checked state changed event I want an event to fire client side when a checkbo ...

  3. 如何使用AngularJS绑定到复选框值列表?

    本文翻译自:How do I bind to list of checkbox values with AngularJS? I have a few checkboxes: 我有几个复选框: < ...

  4. 获取jQuery中的复选框值

    如何在jQuery中获取复选框的值? #1楼 尝试这个小解决方案: $("#some_id").attr("checked") ? 1 : 0; 要么 $(&q ...

  5. TreeView的复选框隐藏 重新整理

    CheckBoxes 为真 代码如下 using System.Runtime.InteropServices; #region 树的复选框隐藏private const int TVIF_STATE ...

  6. 在 GridView 控件中添加一列复选框51

    简介 在前面的教程中 , 我们学习了如何为 GridView 控件添加一列 单选 按钮来选择一个特定的记录.当用户被限制最多只能从网格中选中一项时,一列单选按钮是一个非常恰当的用户界面.然而,有时我们 ...

  7. html如何将多个复选框组织成一组_[Selenium]18.如何处理一组元素

    场景 button group就是元素组,将一组按钮排列在一起.处理这种对象的思路一般是使用find_elements_by_XXXX方法, 然后使用index或属性去定位更具体的元素 代码 下面的代 ...

  8. eazy ui 复选框单选_UI备忘单:单选按钮,复选框和其他选择器

    eazy ui 复选框单选 重点 (Top highlight) Pick me! Pick me! No, pick me! In today's cheat sheet we will be lo ...

  9. C#ListView控件添加复选框并获取选中的数目

    1.添加复选框:listView1.CheckBoxes = true; 2.选中listview并获取选中的数目: private void listView1_ItemChecked(object ...

最新文章

  1. Jittor 的Op, Var算子
  2. 动动手,用TensorFlow API训练出自己的目标检测模型
  3. CF1481F-AB Tree【构造,背包】
  4. HTML的图片标签image的图片地址
  5. LeetCode 1020. 飞地的数量(图的BFS/DFS)
  6. selenium 处理cookie及switch的使用
  7. webtest 文章
  8. 一步一步写算法(之字符串查找 下篇)
  9. python excel插件_django使用插件下载excel的方法
  10. 定义一个Point类,派生出Circle类,计算各派生类对象的面积Area()
  11. Linux入门之磁盘管理(3)文件系统挂载
  12. hdoj3652 B-number
  13. mysql的导入导出命令_mysql导入导出命令
  14. android守护进程
  15. rsync+inotify实现数据实时同步备份
  16. 最新超详细VMware虚拟机下载与安装(一篇足以带你上高速,附钥)
  17. 微软手环2服务器,微软手环2到手后,你要先做这6件事
  18. Hadoop服务器集群崩溃的解决方案
  19. [CTF]Rabbit加密
  20. CheckBox选中触发事件 和 取消选中触发事件

热门文章

  1. win10 病毒实时防护 关闭
  2. (转载)男人应该多吃的菜——凉拌春韭
  3. markdown写作模板
  4. 单周期CPU设计与实现原理分析
  5. python 读取内存_使用Python学习win32库进行内存读写
  6. python有什么好玩的书_史上最全的Python书排行榜|你想知道的都在这里
  7. Alipay(支付宝)接口相关
  8. 【转】蓝屏代码0X0000007B的原因及解决办法
  9. “I don’t understand” 表达 “我不明白”,太老土了!
  10. redhat/CentOS6/7/8离线安装依赖包pcre-devel zlib zlib-devel openssl openssl-devel gcc gcc-c++等编译包