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的子类,所以它可以直接使用这个接口。
两个示例都已经上传到附件,有需要的可以下载。
android studio中的单元 android studio中radiogroup
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
android studio 继承AppCompatActivity android studio中的mainactivity
一、activity的生命周期onCreate(),新建一个活动时调用该方法,并把当前活动放入返回栈的栈顶。onStart(),活动从不可见到可见,出现页面。onResume(),活动准备好进行交互了。onPause(),表示当前不能进行交互,系统准备去启动活着恢复另一个活动时,总是先pause当前活动,再去看其他命令。(例如果出现dialog请求,也就是当前页面前悬浮一个小页面的对话框请求,当前
activity的生命周期 activity活动启动模式 android 出栈 当前页