RadioGroup获取radiobutton值的两种办法
layout布局
1 <RadioGroup 2 android:id="@+id/radiogroup" 3 android:layout_width="wrap_content" 4 android:layout_height="wrap_content" 5 android:orientation="horizontal"> 6 7 <RadioButton 8 android:id="@+id/man" 9 android:layout_width="wrap_content" 10 android:layout_height="wrap_content" 11 android:text="男" /> 12 13 <RadioButton 14 android:id="@+id/woman" 15 android:layout_width="wrap_content" 16 android:layout_height="wrap_content" 17 android:text="女" /> 18 </RadioGroup>
方法一:在radiogroup上设置监听器(不知道为啥一直不能成功)
radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { //通过RadioGroup找到radioButton int radioButtonId = radiogroup.getCheckedRadioButtonId(); RadioButton radioButton = (RadioButton) findViewById(radioButtonId); //获取值 String s = radioButton.getText().toString(); user.setSex(s); } });
方法二:利用radiogroup的getchlidcount方法遍历选项
int childCount = radiogroup.getChildCount(); for (int i = 0; i < childCount; i++) { RadioButton childAt = (RadioButton) radiogroup.getChildAt(i); if (childAt.isChecked()) { user.setSex(childAt.getText().toString()); } }