RadioButton有组的概念
范例演示android.widget.RadioGroup.OnCheckedChangeListener的onCheckedChangeListener
public class MainActivity extends ActionBarActivity {
private RadioButton mFemal;
private RadioButton mMale;
private RadioGroup mSex;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mFemal = (RadioButton)findViewById(R.id.femalRadioButton);
mMale = (RadioButton)findViewById(R.id.maleRadioButton);
mSex = (RadioGroup)findViewById(R.id.radioGrout);
onCheckedChangeListener listener = new onCheckedChangeListener();
mSex.setOnCheckedChangeListener(listener);
}
class onCheckedChangeListener implements android.widget.RadioGroup.OnCheckedChangeListener{
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
//group 当前group。该作用是加入项目中有两个RadioGroup,那么就有必要知道是哪个RadioButton了
//checkedId 被选中的RadioButton,必定有一个是选中的。
if(checkedId == R.id.femalRadioButton){
System.out.println("checked femal radio button");
}else if(checkedId == R.id.maleRadioButton){
System.out.println("checked male radio button");
}
}
}
}
范例演示RadioButton的OnCheckedChangeListener
public class MainActivity extends ActionBarActivity {
private RadioButton mFemal;
private RadioButton mMale;
private RadioGroup mSex;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mFemal = (RadioButton)findViewById(R.id.femalRadioButton);
mMale = (RadioButton)findViewById(R.id.maleRadioButton);
mSex = (RadioGroup)findViewById(R.id.radioGrout);
onCheckedChangeListener listener = new onCheckedChangeListener();
mFemal.setOnCheckedChangeListener(listener);
}
class onCheckedChangeListener implements OnCheckedChangeListener{
@Override
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
CompoundButton cb = (RadioButton)mFemal;
if(cb.isChecked() == true){
System.out.println("feamal is checked");
}else{
System.out.println("male is checked");
}
}
}
注意,这里的OnCheckedChangeListener是RadioButton的,如果此类绑定在female上那么female选中时会调用OnCheckedChangeListener的onCheckedChanged方法,如果选中male时也会调用到OnCheckedChangeListener的onCheckedChanged方法,需要注意