android常用控件(二) RadioGroup RadioButton CheckBox Toast的使用

Android常用控件(二)- RadioGroup、RadioButton、CheckBox、Toast

一、 RadioGroup、RadioButton的用法
RadioGroup是RadioButton的组。一个RadioGroup里面可以有多个RadioButton,但是只能选中其中的一个RadioButton。

示例1:一个应用程序中有两个单选按钮,用于选择男或女。

[img]http://dl.iteye.com/upload/attachment/358252/9d7e4343-8825-32a4-98f6-ed56379e3641.jpg[/img]

开发步骤:
1、 新建一个Android应用程序
2、 编写main.xml文件,添加一个RadioGroup标签(还可以设置此标签内的布局方向是水平布局还是垂直布局)
3、 在RadioGroup标签内添加两个RadioButton
4、 编写Activity,先声明3个全局变量,用于接收这三个控件对象
5、 在onCreate()方法内,根据控件i d获得这三个对象并赋给相应的变量
6、 编写监听器,监听器实现的是RadioGroup.OnCheckedChangeListener()提供的接口,需要重写里面的public void onCheckedChanged(RadioGroup group, int checkedId) 方法,这个方法的第一个参数是用来接收RadioGroup对象,第二个参数是用来接收被选中的RadioButton的ID。
在这个方法里面可以做一系列的判断和操作,比如判断RadioButton的id是否等于checkedId,如果等于就可以输出一句话或者使用Toast显示提示消息。
7、将监听器绑定到RadioGroup上
需要主要的是,
a)、这里绑定监听器的是RadioGroup对象而不是RadioButton对象
b)、这里的监听器实现的是RadioGroup.OnCheckedChangeListener()提供的接口。

二、 CheckBox的用法
CheckBox复选框,相信大家都很了解了,这里就不多说了,直接上示例。
示例2:一个应用程序中有三个复选框,可以进行多选操作。

[img]http://dl.iteye.com/upload/attachment/358254/eafe445a-195b-3412-ba83-a967fae4a911.jpg[/img]

开发步骤:
1、 新建一个Android应用程序
2、 编写main.xml文件,添加三个CheckBox标签
3、 编写Activity,先声明3个全局变量,用于接收这三个控件对象
4、 为每一个CheckBox都编写一个监听器,该监听器实现的是CompoundButton.OnCheckedChangeListener()提供的接口,需要重写里面的public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)方法,这个方法的第一个参数是用来接收CompoundButton对象,第二个参数是用来接收是否被选中,
在这个方法里面可以做一系列的判断和操作,比如判断某个CheckBox有没有被选中
5、 将监听器绑定在对应的CheckBox上

三、 Toast的用法
Toast主要用于提示信息,用起来很方便,一行代码就OK了。
1、 创建Toast对象
makeText(Context context, CharSequence text, int duration);
通过调用这个方法,返回一个Toast对象。
第一个参数是上下文对象,通常是你的应用程序或者Activity对象,
第二个参数就是要显示的文本内容,可以格式化文本
第三个参数是持续多长时间来显示消息,有两个常量:LENGTH_SHORT 或者LENGTH_LONG
2、 调用show()方法显示。
Toast toast = Toast.makeText(RadioTest.this, "female", Toast.LENGTH_SHORT);
toast.show();
在前面的RadioButton示例中,当选中”女”的单选框时调用Toast。
[img]http://dl.iteye.com/upload/attachment/358256/12d84e29-ce7f-3416-96db-75b0c4e74db0.jpg[/img]


有一点需要注意的是:
RadioGroup的监听器实现是RadioGroup.OnCheckedChangeListener()提供的接口,而CheckBox的监听器实现的是CompoundButton.OnCheckedChangeListener()提供的接口
为什么RadioGroup和CheckBox实现的不是同一个接口呢?
原因大概是因为:
在RadioGroup.OnCheckedChangeListener()里面的onCheckedChanged(RadioGroup group, int checkedId) 方法它里面需要的是一个RadioGroup参数,而RadioGroup并不是CompoundButton的子类,所以它只能再重新写一个这样的接口。
而CheckBox它本身就是CompoundButton的子类,所以它可以直接使用这个接口。

两个示例都已经上传到附件,有需要的可以下载。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值