Android学习笔记:常用控件 RadioGroup和CheckBox
16lz
2021-01-24
RadioGroup和CheckBox是android的常用控件,本文自做简单介绍和学习笔记,所以所用的控件样式选用android默认的样式。
先看下代码实现的效果图
图中,上面两个(male和female)为一个RadioGroup中的两个RadioButton,下面三个为CheckBox。
一个RadioGroup里面的内容只可单选,CheckBox可多选。
接下来是代码部分
布局文件代码activity_main.xml :
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context="com.jam.radiogroupandcheckbox.MainActivity"><RadioGroupandroid:id="@+id/id_radiogroup"android:layout_width="wrap_content"android:layout_height="wrap_content"><RadioButtonandroid:id="@+id/id_radiobutton_male"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="male"/><RadioButtonandroid:id="@+id/id_radiobutton_female"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="female"/></RadioGroup><CheckBoxandroid:id="@+id/id_checkbox_one"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="one"/><CheckBoxandroid:id="@+id/id_checkbox_two"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="two"/><CheckBoxandroid:id="@+id/id_checkbox_three"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="three"/></LinearLayout>
采用的是线性布局,代码比较简单,就是一个RadioGroup包含了两个RadioButton(想要多少RadioButton就加多少个),还有三个CheckBox。
接下来是MainActivity.java :
packagecom.jam.radiogroupandcheckbox;importandroid.app.Activity;importandroid.os.Bundle;importandroid.util.Log;importandroid.view.Menu;importandroid.widget.CheckBox;importandroid.widget.CompoundButton;importandroid.widget.RadioButton;importandroid.widget.RadioGroup;importandroid.widget.RadioGroup.OnCheckedChangeListener;publicclassMainActivityextendsActivity{//声明控件privateRadioGroupradioGroup;privateCheckBoxcheckBox_one;privateCheckBoxcheckBox_two;privateCheckBoxcheckBox_three;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);radioGroup=(RadioGroup)findViewById(R.id.id_radiogroup);checkBox_one=(CheckBox)findViewById(R.id.id_checkbox_one);checkBox_two=(CheckBox)findViewById(R.id.id_checkbox_two);checkBox_three=(CheckBox)findViewById(R.id.id_checkbox_three);/***radioGroup绑定一个匿名内部类android.widget.RadioGroup.OnCheckedChangeListener*/radioGroup.setOnCheckedChangeListener(newOnCheckedChangeListener(){@OverridepublicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){switch(checkedId){caseR.id.id_radiobutton_male:Log.i("radioGroup","male");break;caseR.id.id_radiobutton_female:Log.i("radioGroup","female");break;}}});//给三个CheckBox绑定监听器checkBox_one.setOnCheckedChangeListener(newmyOnCheckedChangeListener());checkBox_two.setOnCheckedChangeListener(newmyOnCheckedChangeListener());checkBox_three.setOnCheckedChangeListener(newmyOnCheckedChangeListener());}/***注意CheckBox绑定的Listener是android.widget.CompoundButton.OnCheckedChangeListener*@authorjam**/privateclassmyOnCheckedChangeListenerimplementsandroid.widget.CompoundButton.OnCheckedChangeListener{@OverridepublicvoidonCheckedChanged(CompoundButtonbuttonView,booleanisChecked){switch(buttonView.getId()){caseR.id.id_checkbox_one:Log.i("checkbox","one");break;caseR.id.id_checkbox_two:Log.i("checkbox","two");break;caseR.id.id_checkbox_three:Log.i("checkbox","three");break;}}}}
以上便是RadioGroup和CheckBox的简单使用方式,RadioGroup和CheckBox获取选择的内容和其他用途网上已有许多资源,在此就不再介绍。
更多相关文章
- Android:AppWidget放到桌面上
- android如何调用其他应用的方法或属性
- 获取Nexus系列手机驱动(用于编译Android(安卓)ROM的驱动)
- Android下使用Hessian与Java服务端通讯
- Eclipse的项目迁移到Android(安卓)Studio的方法。
- Android(安卓)MediaRecorder视频录制,多分辨率调节
- Android通过Service编程实现短信监听,通过Toast显示收到的短信的
- Android通过WebView实现office文档在线预览无法显示问题解决
- Android(安卓)中的依赖注入框架