Android 第十一课——UI Checkbox

常用基础空组件

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

时间: 2024-08-24 05:15:25

Android 第十一课——UI Checkbox的相关文章

Android 第十课——UI RadioButton

常用基础空组件 5 RadioGroup RadioButton 单选按钮时常用组件之一,但是开发过程中虽然很多地方会用到单选按钮,但是却不会用Android系统提供的原始样式,类似我们在写html时,不同的浏览器提供的单选按钮是不一样的,兼容性也很差,一般用图片替代伪装.但是无论如何伪装样式,单选按钮的功能都是一样的.下面就用一个 加减乘除 运算器来讲解单选按钮的功能,至于样式以后提供. layout中组件:  <RadioGroup         android:id="@+id/o

Android 第八课——UI布局2

Android布局分为:线性布局.相对布局.表格布局.帧布局.网格布局五种 1)FrameLayout(帧布局) 帧布局是最简单的布局对象,它被定制为用户屏幕上的一个空白备用区域,之后用户可以在其中填充一个单一对象,例如一张图片等.所有的子元素将会固定在屏幕左上角:我们不能为FrameLayout中的一个子元素指定一个位置.而且新增的子元素将会直接覆盖填充旧的子元素,类似于一个栈结构,当然也不一定是全部挡住,这样看透明度以及大小来决定. <FrameLayout xmlns:android= &qu

Android 第七课——UI布局

Android布局分为:线性布局.相对布局.表格布局.帧布局.网格布局五种 布局中的距离单位:dp.px.sp. 布局继承关系图: 1)熟悉几个常用属性 <Button android:id="@+id/loginName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/login&quo

Android基础知识(1)——UI编程

我学习android一段时间了,看着大牛们的各种神博客,心里也痒痒的,希望有一天也能成为他们一样. 我知道,这些都是一滴一滴的积累,所有我也需要找到我的学习方法,打好基础,做出属于我自己的成果. 当然,作为一名菜鸟程序员,更加要懂得把知识整理归类,方便记忆. ----------------------------------------------------------- 在学校里听老师讲课,总会让学生误会程序员的主要工作不是界面美化,那都是美工做得事情.但随着移动开发的不断发展,在软件开发

Android之十一实现登陆页面分析

Android之十一实现登陆页面分析 二.登录界面的布局分析 1.login.xml Step1:首先建立drawable 文件夹,创建logintopbg_roundcorner.xml <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <solid a

50个Android开发人员必备UI效果源码[转载]

50个Android开发人员必备UI效果源码[转载] http://blog.csdn.net/qq1059458376/article/details/8145497 Android 仿微信之主页面实现篇Android 仿微信之界面导航篇Android 高仿QQ 好友分组列表Android 高仿QQ 界面滑动效果Android 高仿QQ 登陆界面Android 对Path的旋转效果的拓展Android高仿360安全卫士布局源码Android SlidingDrawer 滑动抽屉效果Androi

【C++探索之旅】第一部分第十一课:小游戏,猜单词

内容简介 1.第一部分第十一课:小游戏,猜单词 2.第一部分第十二课预告:指针一出,谁与争锋 小练习 上一课<[C++探索之旅]第一部分第十课:文件读写,海阔凭鱼跃>中我们学习了读写文件的知识. 第一部分的课程也快接近尾声了,下一课我们会学习很重要的指针的知识.之后,我们就进入第二部分:面向对象编程了.哈哈哈,激动不? 目前为止,我们也学了不少内容:编译基本原理,IDE,变量,函数,条件语句,循环语句,引用,数组,文件读写,等等.你应该为自己感到自豪. 俗语说得好:实践是最好的老师.我们学了那

Android子线程更新UI主线程方法之Handler

背景: 我们开发应用程序的时候,处于线程安全的原因子线程通常是不能直接更新主线程(UI线程)中的UI元素的,那么在Android开发中有几种方法解决这个问题,其中方法之一就是利用Handler处理的. 下面说下有关Handler相关的知识. 多线程一些基础知识回顾:在介绍Handler类相关知识之前,我们先看看在Java中是如何创建多线程的方法有两种:通过继承Thread类,重写Run方法来实现通过继承接口Runnable实现多线程 具体两者的区别与实现,看看这篇文章中的介绍:http://de

BeagleBone Black板第十一课: PWM子系统简介

BBB板第十一课: PWM子系统简介 查看多达4000多页的AM335X 英文手册,找到其中的15章节PWMSS,我英文学不好,翻译其中的意思真难,建议高手帮翻译一下那4000多页的手册贡献给大家. 在这里简单说下几个专业名词: PWMMSS全称Pulse-Width Modulation Subsystem 脉冲宽度调制子系统,由eHRPWM.eCAP和eQEP三个模块组成,简单的说就是三种工作模式. 下面的图为PWM子系统图(来自4000多页的手册) 1.eHRPWM全称Enhanced H