RadioGroup是RadioButton的集合,
RadioGroup里面可以包含很多RadioButton,提供多选一机制,只能选择其中一个
RadioGroup的orientation(方向)有两个属性
android:orientation = {"vertial" ---垂直分布
{"horizontal" ---水平排布
注意RadioGroup一般用于单选,而且选中之后不能取消
而CheckBox一般用于多选,而且选中之后可以取消
例程:
1:主程序:
package com.Thinker.checkbox; import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener; public class MainActivity extends Activity implements OnCheckedChangeListener{
private RadioGroup radioGroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/**
* 找到相应控件对象赋给这个引用
*/
radioGroup = (RadioGroup) findViewById(R.id.radioGroup1);
/**
* 设置监听事件
*/
radioGroup.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(RadioGroup arg0, int checkedId) {
// TODO Auto-generated method stub
//checkedId是所选所监控到的RadioGroup中的RadioButton的id
switch(checkedId){
case R.id.radio0:
Log.i("tag", "你确定你是男生?");
break;
case R.id.radio1:
Log.i("tag", "你确定你是女生");
break;
case R.id.radio2:
Log.i("tag", "再想想你到底是男生还是女生");
break;
default:
break;
}
} }
2:控件属性
<RelativeLayout xmlns: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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" > <!-- 注意checkbox选中之后还可以进行取消 --> <RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="14dp" > <RadioButton
android:id="@+id/radio0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="男" /> <RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女" /> <RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="其他" />
</RadioGroup> </RelativeLayout>