Android控件系列之RadioButtonRadioGroup(转)
学习目的:
1、掌握在Android中如何建立RadioGroup和RadioButton
2、掌握RadioGroup的常用属性
3、理解RadioButton和CheckBox的区别
4、掌握RadioGroup选中状态变换的事件(监听器)
RadioButton和CheckBox的区别:
1、单个RadioButton在选中后,通过点击无法变为未选中
单个CheckBox在选中后,通过点击可以变为未选中
2、一组RadioButton,只能同时选中一个
一组CheckBox,能同时选中多个
3、RadioButton在大部分UI框架中默认都以圆形表示
CheckBox在大部分UI框架中默认都以矩形表示
RadioButton和RadioGroup的关系:
1、RadioButton表示单个圆形单选框,而RadioGroup是可以容纳多个RadioButton的容器
2、每个RadioGroup中的RadioButton同时只能有一个被选中
3、不同的RadioGroup中的RadioButton互不相干,即如果组A中有一个选中了,组B中依然可以有一个被选中
4、大部分场合下,一个RadioGroup中至少有2个RadioButton
5、大部分场合下,一个RadioGroup中的RadioButton默认会有一个被选中,并建议您将它放在RadioGroup中的起始位置
XML布局:
![](/assets/blank.gif)
2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:orientation="vertical"
4 android:layout_width="fill_parent"
5 android:layout_height="fill_parent"
6 >
7 <TextView
8 android:layout_width="fill_parent"
9 android:layout_height="wrap_content"
10 android:text="请选择您的性别:"
11 android:textSize="9pt"
12 />
13 <RadioGroup android:id="@+id/radioGroup" android:contentDescription="性别" android:layout_width="wrap_content" android:layout_height="wrap_content">
14 <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/radioMale" android:text="男" android:checked="true"></RadioButton>
15 <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/radioFemale" android:text="女"></RadioButton>
16 </RadioGroup>
17 <TextView
18 android:id="@+id/tvSex"
19 android:layout_width="fill_parent"
20 android:layout_height="wrap_content"
21 android:text="您的性别是:男"
22 android:textSize="9pt"
23 />
24 </LinearLayout>
![](/assets/blank.gif)
选中项变更的事件监听:
当RadioGroup中的选中项变更后,您可能需要做一些相应,比如上述例子中,性别选择“女”后下面的本文也相应改变,又或者选择不同的性别后,出现符合该性别的头像列表进行更新,女生不会喜欢使用大胡子作为自己的头像。
如果您对监听器不熟悉,可以阅读Android控件系列之Button以及Android监听器。
后台代码如下:
![](/assets/blank.gif)
2 @Override
3 public void onCreate(Bundle savedInstanceState) {
4 super.onCreate(savedInstanceState);
5
6 setContentView(R.layout.main);
7
8 //根据ID找到该文本控件
9 tv = (TextView)this.findViewById(R.id.tvSex);
10 //根据ID找到RadioGroup实例
11 RadioGroup group = (RadioGroup)this.findViewById(R.id.radioGroup);
12 //绑定一个匿名监听器
13 group.setOnCheckedChangeListener(new OnCheckedChangeListener() {
14
15 @Override
16 public void onCheckedChanged(RadioGroup arg0, int arg1) {
17 // TODO Auto-generated method stub
18 //获取变更后的选中项的ID
19 int radioButtonId = arg0.getCheckedRadioButtonId();
20 //根据ID获取RadioButton的实例
21 RadioButton rb = (RadioButton)MyActiviy.this.findViewById(radioButtonId);
22 //更新文本内容,以符合选中项
23 tv.setText("您的性别是:" + rb.getText());
24 }
25 });
26 }
![](/assets/blank.gif)
效果如下:
总结:
本文介绍了Android中如何使用RadioGroup和RadioButton,对比了RadioButton和CheckBox的区别,并实现了自定义的RadioGroup中被选中RadioButton的变更监听事件。
摘自:http://www.cnblogs.com/wt616/archive/2011/06/20/2085531.html
Android控件系列之RadioButtonRadioGroup(转)相关推荐
- Android控件系列之RadioButtonRadioGroup
2019独角兽企业重金招聘Python工程师标准>>> 学习目的: 1.掌握在Android中如何建立RadioGroup和RadioButton 2.掌握RadioGroup的常用 ...
- android 按钮吐司,Android控件系列之Toast使用介绍
Toast英文含义是吐司,在Android中,它就像烘烤机里做好的吐司弹出来,并持续一小段时间后慢慢消失 Toast也是一个容器,可以包含各种View,并承载着它们显示. 使用场景: 1.需要提示用户 ...
- Android控件系列之XML静态资源
说明:本教程来源于http://www.cnblogs.com/wt616/转载请标注该链接 学习目的: 1.了解在Android中如何设置和调用XML资源 2.掌握如何利用XML和JAVA代码进行协 ...
- Android控件系列——ProgressBar
ProgressBar 提供两种进度显示模式:精确模式,模糊模式,效果见当前文件夹下 精确模式:可看到精确的进度(右) 模糊模式:相当于动画,用户看到到进度信息(左) XML属性 style属性值 W ...
- App控件定位:Android 控件介绍及元素定位方法
本文将分享Android相关基础知识和Android APP控件定位工具的使用方法. 目录 Android基础知识 Android布局 Android四大组件 1.activity 2.Service ...
- Android控件点击圆形阴影反馈解决方案
Android控件点击圆形阴影反馈解决方案 愿景 对于手机App而言,没有反馈效果的按钮使用体验是不舒服的.最近在深入学习Material Design,对其中的ripple效果比较感兴趣.我想着尝试 ...
- 【079】用代码来创建 Android 控件
一般来说我们在创建控件的时候都是在 XML 文件中完成的, 实施起来还是蛮方便的, 而且修改起来也可以很快的看见效果, 但是有一个很大的劣势就是没办法动态的创建控件, 举个例子, 例如我从数据库中取出 ...
- Android 控件架构及View、ViewGroup的测量
附录:示例代码地址 控件在Android开发的过程中是必不可少的,无论是我们在使用系统控件还是自定义的控件.下面我们将讲解一下Android的控件架构,以及如何实现自定义控件. 1.Android控件 ...
- Android控件美化Shape
Android控件美化Shape你会用吗? -- 未审核 编辑文档 如果你对Android系统自带的UI控件感觉不够满意,可以尝试下自定义控件,我们就以Button为例,很早以前Android1 ...
- android控件属性
android控件属性 控件属性: android属性 Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料, 第一类:属性值为true或false an ...
最新文章
- Opencv中除了cv2.cvtColor彩色图转灰度图之外的其他6种方法
- KaliLinuxNetHunter教程下载相关资源
- util-C# 复杂条件查询(sql 复杂条件查询)查询解决方案
- 小程序 循环中有多个input,怎么获取每个input输入框的值
- 十万亿级OLAP引擎解读-AnalyticDB如何支撑数据银行超大规模低成本实时分析
- 百度OCR文字识别API使用心得===com.baidu.ocr.sdk.exception.SDKError[283604]
- Cpp module
- 精品软件 推荐 淘宝 天猫 秒杀助手
- 霍夫斯特拉大学计算机科学专业排名,美国霍夫斯特拉大学的最新排名
- 欧姆龙485通讯示例程序_黄冈欧姆龙plc培训班
- msl3等级烘烤时间_MSL 湿敏等级对应表
- 怎么关闭计算机安全,电脑中安全防护怎么关闭
- 计算机管理哪个是主板驱动,请问一下这里面哪个是主板驱动?
- Ubuntu安装MATLAB并设置桌面快捷方式!!!
- 2012服务器系统下怎么分区,Windows Server 2012之更改系统分区
- 北京车辆过户全过程(详细得狠)20160729更新,图4幅
- Java开发技术总结!小米java校招面试题
- 编码转换--字符映射表
- plm软件试用测试报告,ANSYS 15.0系列测试报告——FLUENT Meshing 15.0
- SFM4300流量传感器应用笔记
热门文章
- c++ 一个函数包括多个返回值判断_整活函数式编程
- python判断丑数_LeetCode-python 264.丑数 II
- java和python有什么区别_Python与Java、C、Ruby、PHP等编程语言有什么区别?
- mysql使用mybatis删除不生效_解决myBatis中删除条件的拼接问题
- SQL Server2008函数大全(完整版)
- nohup方式 真正的后台不挂断运行程序
- python中list最大值_【Python实践-5】使用迭代查找一个list中最小和最大值
- Anaconda使用conda连接网络时,出现网络错误CondaHTTPError(包括Anaconda安装与入门)
- 读取文件时,文本文件的UTF-8格式带来的问题
- python写出租车计费系统_出租车计费系统设计 Java