文档章节

Android 第十一课——UI Checkbox

learn_more
 learn_more
发布于 2015/01/07 14:13
字数 501
阅读 122
收藏 4

常用基础空组件

6 CheckBox

复选框是常用组件之一,但是开发过程中虽然很多地方会用到复选框,但是却不会用Android系统提供的原始样式,类似我们在写html时,不同的浏览器提供的复选框按钮是不一样的,兼容性也很差,一般用图片替代伪装。但是无论如何伪装样式,复选框的功能都是一样的。

layout中组件:

       <CheckBox  
            android:id="@+id/cb1" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:checked="true" 
            android:text="basketball"/> 
        <CheckBox  
            android:id="@+id/cb2" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:text="baseball"/>

Activity中组件:

   protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        // 获取checkbox
        cb1 = (CheckBox)findViewById(R.id.cb1);
        cb2 = (CheckBox)findViewById(R.id.cb2);
        // 为checkbox注册事件监听(当复选框被选中或从选中到未被选中状态时这个类的onCheckedChanged方法被触发)
        CBCheckedImpl impl = new CBCheckedImpl();
        cb1.setOnCheckedChangeListener(impl);
        cb2.setOnCheckedChangeListener(impl);
    }
     
  // Activity内部类,实现android.widget.CompoundButton.OnCheckedChangeListener接口同时实现onCheckedChanged方法
  btn表示发生状态变化的组件,flag如果为true表示选中,否则表示为被选中
  @Override 
  public void onCheckedChanged(CompoundButton btn, boolean flag) { 
   // TODO Auto-generated method stub 
   String rs = "nothing"; 
   rs = flag?"选中了"+btn.getText().toString():"未选中"+btn.getText().toString(); 
   Toast.makeText(CheckBoxActivity.this,rs, Toast.LENGTH_SHORT).show(); 
  } 
    
         
  }

注意:

1)复选框的使用基本和单选按钮差不多,主要就是要记住单选按钮实现的接口监听是android.widget.RadioGroup.OnCheckedChangeListener;然而复习按钮实现的监听是android.widget.CompoundButton.OnCheckedChangeListener。不要以为单选按钮和复选按钮都是CompoundButton的子类,就应该实现相同的接口,实际上是因为,单选按钮有组的概念,然而复选按钮没有组的概念。


下一节将学习UI的

7 ProgressBar

8 ListView ListActivity SimpleAdapter


© 著作权归作者所有

learn_more
粉丝 93
博文 240
码字总数 210196
作品 0
深圳
程序员
私信 提问
加载中

评论(1)

心有灵犀
心有灵犀
一如既往的支持
android 自定义checkbox与文字的距离设置

改变checkbox默认的文字与选框之间的距离两种方案,刚刚开始接触checkbox 的时候由于不熟悉控件,使用了组合控件:一个未设定text的CheckBox和一个TextView来达到目的。后来发现只需要设定C...

NotFoundException
2014/05/13
18K
0
【Google官方教程】前言:高效的Bitmap显示

转载声明:Ryan的博客文章欢迎您的转载,但在转载的同时,请注明文章的来源出处,不胜感激! :-) http://my.oschina.net/ryanhoo/blog/88153 译者:Ryan Hoo 来源:https://developer.andro...

RyanHoo
2012/11/09
3.8K
11
Android learning - Activities

Android provides a number of ready-made views that you can use to design and organize your layout. "Widgets" are views that provide a visual (and interactive) elements for the s......

方传云
2012/03/04
105
0
QT实战-计算器-刘桂林-专题视频课程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_26787115/article/details/83580590 QT实战-计算器—152人已学习 课程介绍 使用Qt Creator开发一个具有运算...

刘某人程序员
2018/04/27
0
0
移动应用测试框架—Calabash Android 简介

  什么是 Calabash?    Calabash 是一个自动化测试框架,它可以测试?android?和 iOS 原生应用和混合应用。    它有:    calabash-android    calabash-ios    主页:? http://...

糖糖豆豆
2014/12/22
198
0

没有更多内容

加载失败,请刷新页面

加载更多

springboot2.0 maven打包分离lib,resources

springboot将工程打包成jar包后,会出现获取classpath下的文件出现测试环境正常而生产环境文件找不到的问题,这是因为 1、在调试过程中,文件是真实存在于磁盘的某个目录。此时通过获取文件路...

陈俊凯
今天
6
0
BootStrap

一、BootStrap 简洁、直观、强悍的前端开发框架,让web开发更加迅速、简单 中文镜像网站:http://www.bootcss.com 用于开发响应式布局、移动设备优先的WEB项目 1、使用boot 创建文件夹,在文...

wytao1995
今天
10
0
小知识:讲述Linux命令别名与资源文件的区别

别名 别名是命令的快捷方式。为那些需要经常执行,但需要很长时间输入的长命令创建快捷方式很有用。语法是: alias ppp='ping www.baidu.com' 它们并不总是用来缩短长命令。重要的是,你将它...

老孟的Linux私房菜
今天
8
0
《JAVA核心知识》学习笔记(6. Spring 原理)-5

它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是 Spring 仍然可以和其他的框架无缝整合。 6.1.1. Spring 特点 6.1.1.1. 轻量级 6.1.1.2. 控制反转 6.1.1....

Shingfi
今天
8
0
Excel导入数据库数据+Excel导入网页数据【实时追踪】

1.Excel导入数据库数据:数据选项卡------>导入数据 2.Excel导入网页数据【实时追踪】:

东方墨天
今天
11
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部