【Android论文栏目提醒】:网学会员--在 Android论文编辑为广大网友搜集整理了:Android开发学习笔记:RadioButton和CheckBox浅析 - 讲义教程绩等信息,祝愿广大网友取得需要的信息,参考学习。
一.RadioButton单选按钮 RadioButton单选按钮在
Android开发中应用的非常广泛比如一些选择项的时候会用到单选按钮。
它是一种单个圆形单选框双状态的按钮可以选择或不选择。
在RadioButton没有被选中时用户能够按下或点击来选中它。
但是与复选框相反用户一旦选中就不能够取消选中。
实现RadioButton由两部分组成也就是RadioButton和RadioGroup配合使用RadioGroup是单选组合框可以容纳多个RadioButton的容器.在没有RadioGroup的情况下RadioButton可以全部都选中当多个RadioButton被RadioGroup包含的情况下RadioButton只可以选择一个。
并用setOnCheckedChangeListener来对单选按钮进行监听。
下面的具体的例子 MainActivity.java package com.
android.radiobutton import
android.app.Activity import
android.os.Bundle import
android.widget.RadioGroup import
android.widget.Toast public class MainActivity extends Activity //声明RadioGroup RadioGroup raGroup1raGroup2 Override public void onCreateBundle savedInstanceState super.onCreatesavedInstanceState setContentViewR.layout.main //通过findViewById获得RadioGroup对象 raGroup1RadioGroupfindViewByIdR.id.radioGroup1 //添加事件监听器 raGroup1.setOnCheckedChangeListenernew RadioGroup.OnCheckedChangeListener Override public void onCheckedChangedRadioGroup group int checkedId // TODO Auto-generated method stub ifcheckedIdR.id.radioBtn1 Toast.makeTextMainActivity.this 你来自广东省 Toast.LENGTH_LONG.show else ifcheckedIdR.id.radioBtn2 Toast.makeTextMainActivity.this 你来自广西省 Toast.LENGTH_LONG.show else Toast.makeTextMainActivity.this 你来自湖南省 Toast.LENGTH_LONG.show raGroup2RadioGroupfindViewByIdR.id.radioGroup2 raGroup2.setOnCheckedChangeListenernew RadioGroup.OnCheckedChangeListener Override public void onCheckedChangedRadioGroup group int checkedId // TODO Auto-generated method stub ifcheckedIdR.id.radioBtn4 Toast.makeTextMainActivity.this 你的性别是男 Toast.LENGTH_LONG.show else Toast.makeTextMainActivity.this 你的性别是女 Toast.LENGTH_LONG.show main.xml strings.xml 你来自哪个省 你的性别是 单选按钮测试 广东 广西 湖南 男 女 效果图 RadioButton的另一种效果 要实现上面的效果只要在main.xml布局文件中的加入
android:buttonnull
android:drawableRightandroid:drawable/btn_radio即可代码如下所示 二.CheckBox复选按钮 CheckBox复选按钮是一种有双状态按钮的特殊类型可以选中或者不选中。
可以现在布局文件中定义多选按钮然后对每一个多选按钮进行事件监setOnCheckedChangeListener通过isChecked来判断选项是否被选中 下面是具体的例子 MainActivity.java package com.
android.checkbox import
android.app.Activity import
android.os.Bundle import
android.widget.CheckBox import
android.widget.CompoundButton import
android.widget.Toast import
android.widget.CompoundButton.OnCheckedChangeListener public class MainActivity extends Activity //声明复选按钮 private CheckBox cBox1 private CheckBox cBox2 private CheckBox cBox3 Override public void onCreateBundle savedInstanceState super.onCreatesavedInstanceState setContentViewR.layout.main //通过findViewById获得CheckBox对象 cBox1CheckBoxfindViewByIdR.id.checkbox1 cBox2CheckBoxfindViewByIdR.id.checkbox2 cBox3CheckBoxfindViewByIdR.id.checkbox3 //注册事件监听器 cBox1.setOnCheckedChangeListenerlistener cBox2.setOnCheckedChangeListenerlistener cBox3.setOnCheckedChangeListenerlistener //响应事件 private OnCheckedChangeListener listener new OnCheckedChangeListener Override public void onCheckedChangedCompoundButton buttonView boolean isChecked //cBox1被选中 if buttonView.getIdR.id.checkbox1 if isChecked Toast.makeTextMainActivity.this 你喜欢足球 Toast.LENGTH_LONG.show //cBox2被选中 else if buttonView.getIdR.id.checkbox2 if isChecked Toast.makeTextMainActivity.this 你喜欢篮球 Toast.LENGTH_LONG.show //cBox3被选中 else if buttonView.getIdR.id.checkbox3 if isChecked Toast.makeTextMainActivity.this 你喜欢排球 Toast.LENGTH_LONG.show main.xml strings.xml 你喜欢的运动是 复选按钮测试 足球 篮球 排球 效果图 三.总结 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中的起始位置 TAG: Andriod