单选按钮RadioGroup、复选框CheckBox都有OnCheckedChangeListener事件,我们一起了解一下。

 package com.genwoxue.oncheckedchanged;

 import android.os.Bundle;
import android.app.Activity;
import android.widget.RadioGroup;
import android.widget.RadioButton;
import android.widget.RadioGroup.OnCheckedChangeListener; //引入OnCheckedChangeListener事件相关包
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.Toast; public class MainActivity extends Activity {
private RadioGroup GenderGroup=null;
private RadioButton rbMale=null;
private RadioButton rbFemale=null;
private CheckBox cbFootBall=null;
private CheckBox cbBasketBall=null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); GenderGroup=(RadioGroup)super.findViewById(R.id.gender);
rbMale=(RadioButton)super.findViewById(R.id.male);
rbFemale=(RadioButton)super.findViewById(R.id.female);
cbFootBall=(CheckBox)super.findViewById(R.id.football);
cbBasketBall=(CheckBox)super.findViewById(R.id.basketball);
//在GenderGroup注册OnCheckedChangeListener事件
GenderGroup.setOnCheckedChangeListener(new GenderOnCheckedChangeListener());
//在cbFootBall注册OnCheckedChangeListener事件
cbFootBall.setOnCheckedChangeListener(new BootBallOnCheckedChangeListener());
//在cbBasketBall注册OnCheckedChangeListener事件 cbBasketBall.setOnCheckedChangeListener(new BasketBallOnCheckedChangeListener());
} private class GenderOnCheckedChangeListener implements OnCheckedChangeListener{
@Override
public void onCheckedChanged(RadioGroup group,int checkedId){
String sGender="";
if(rbFemale.getId()==checkedId){
sGender=rbFemale.getText().toString();
}
if(rbMale.getId()==checkedId){
sGender=rbMale.getText().toString();
}
Toast.makeText(getApplicationContext(), "您选择的性别是:"+sGender, Toast.LENGTH_LONG).show();
} } private class BootBallOnCheckedChangeListener implements CompoundButton.OnCheckedChangeListener{
@Override
public void onCheckedChanged(CompoundButton button, boolean isChecked){
String sFav="";
if(isChecked){
sFav=cbFootBall.getText().toString();
sFav=sFav+"选中!";
}
else
sFav=sFav+"未迁中";
Toast.makeText(getApplicationContext(), "您选择的爱好是:"+sFav, Toast.LENGTH_LONG).show();
}
} private class BasketBallOnCheckedChangeListener implements CompoundButton.OnCheckedChangeListener{
@Override
public void onCheckedChanged(CompoundButton button,boolean isChecked){
String sFav="";
if(cbBasketBall.isChecked()){
sFav=cbBasketBall.getText().toString();
sFav=sFav+"选中!";
}
else
sFav=sFav+"未迁中";
Toast.makeText(getApplicationContext(), "您选择的爱好是:"+sFav, Toast.LENGTH_LONG).show();
}
} }

管单选按钮和复选框都有OnCheckedChange事件,但注意二者区别。

  效果如下:

  

android 中单选和复选框监听操作的更多相关文章

  1. Webfrom 生成流水号 组合查询 Repeater中单选与复选控件的使用 JS实战应用

                                             Default.aspx 网页界面 <%@ Page Language="C#" AutoE ...

  2. Webfrom 生成流水号 组合查询 Repeater中单选与复选控件的使用 JS实战应用

                                             Default.aspx 网页界面 <%@ Page Language="C#" AutoE ...

  3. Android实战之ListView复选框

    项目中有用到复选框的例子,啊啊......在网上查找有关资料,大多都是过于繁琐,所以自己决定写个这个方面的demo... 先给个效果图: 在ListView中添加复选框主要注意以下几个问题: 1.Li ...

  4. php一些单选、复选框的默认选择方法(示例)

    转载 http://www.php.cn/php-weizijiaocheng-360029.html 一. radio和checkbox及php select默认选择的实现代码 1.radio单选框 ...

  5. Python3+Selenium3+webdriver学习笔记8(单选、复选框、弹窗处理)

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记8(单选.复选框.弹窗处理)''' from selenium ...

  6. Web版需求征集系统所得1,servlet中获取checkbox复选框的值

    servlet中获取checkbox复选框的值 </tr> <tr> <td align="right">研究类型</td> < ...

  7. iCheck获取单选和复选框的值和文本

    //获取单选和复选框的值//parameters.type:"radio","checkbox"//parameters.name:input-name//pa ...

  8. 复选框批量删除操作-jquery方式

    1.首先在页面添加一个批量删除的按钮:<li class="btns"><input id="deleteSubmit" class=&quo ...

  9. selenium+Python(定位 单选、复选框,多层定位)

    1.定位一组元素webdriver 可以很方便的使用 findElement 方法来定位某个特定的对象,不过有时候我们却需要定位一组对象,这时候就需要使用 findElements 方法.定位一组对象 ...

随机推荐

  1. 日期:Date

    API--- java.util.Date:日期类,月份从0-11: 日期对象和毫秒值之间的转换. 1,日期对象转成毫秒值.Date类中的getTime方法. 2,如何将获取到的毫秒值转成具体的日期呢 ...

  2. 使用 Razor 生成 HTML5 中的 data- 属性

    在 HTML5 中, 可以使用 data- 属性来表示用户数据,这些数据甚至可以是 JSON 格式的数据,对 Web 前端开发带来很大的方便. 在 MVC 的 Razor 中,可以使用匿名对象来生成定 ...

  3. svn 常用操作命令

    svn 常用操作命令 检出 svn checkout http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 svn checkout svn://路径(目录或文件 ...

  4. python实现批量ping IP,并将结果写入

    最近工作需要,写了一个Python小脚本,分享给大家,因为公司的IP用的差不多了,然后离职人员的IP有没有及时删除,导致没多少IP用了,所以做了一个python脚本跑了跑,清出来一堆ping不通的IP ...

  5. win8或win8.1修改注册表失败的原因

    win8 and win8.1 modify the registry need compiled to be different versions according to the os bits.

  6. Android各个文件夹对应的分辨率?

  7. js基础笔记

    <!DOCTYPE html><html lang="en"><head>        <meta charset="UTF- ...

  8. CSS渲染速度改善的十个方法与建议

    由于不同浏览器对HTML标签的解释有差异,所以最终的网页效果在不同的浏览器中可能是不一样的,为了消除这方面的风险 一.*{} #zishu *{} 尽量避开 由于不同浏览器对HTML标签的解释有差异, ...

  9. LINQ to XML 实战

    LINQ to XML 轴定义:创建XML树或将XML文档加载到XML树之后,可以进行查询,从而查找元素并检索它们的值. 两类轴方法:-一些轴就是XELement和XDocument类中返回IEnum ...

  10. poj2027

    #include <stdio.h> int main(){ int n; int a,b; while(~scanf("%d",&n)){ while(n-- ...