How do I programmatically set text to a RadioButton inside RadioGroup?… here is a solution to the problem.
How do I programmatically set text to a RadioButton inside RadioGroup?
I have a RadioGroup
with some RadioButtons
.
I want to set up some text programmatically on RadioButton
. I used the following code because I can’t access the RadioButton
in RadioGroup
using Java.
How do I set text on RadioButton
in RadioGroup
?
XML layout:
<RadioGroup android:layout_width="fill_parent"
android:layout_marginLeft="20dip"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/QueGroup1">
<RadioButton android:checked="false"
android:button="@drawable/green"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:textColor="#000"
android:text="Yes"
android:id="@+id/rbtnYes"
android:visibility="gone" />
<RadioButton android:checked="false"
android:button="@drawable/red"
android:textColor="#000"
android:text="No"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/rbtnNo"
android:visibility="gone" />
<RadioButton android:checked="false"
android:button="@drawable/red"
android:textColor="#000"
android:text="Dont Know"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/rbtnDontKnow"
android:visibility="gone" />
</RadioGroup>
Java code:
private void fnRadioTextSet(String strval) {
rbtnYes = (RadioButton)findViewById(R.id.rbtnYes);
rbtnNo = (RadioButton)findViewById(R.id.rbtnNo);
rbtnDontKnow = (RadioButton)findViewById(R.id.rbtnDontKnow);
RadioGroup rbtnGrp = (RadioGroup)findViewById(R.id.QueGroup1);
String[] strArrtext = strval.split(",");
for (int intcount = 0; intcount < strArrtext.length; intcount++) {
rbtnGrp.getChildAt(intcount).settext("test");
}
int i = rbtnGrp.getChildCount();
Toast.makeText(getApplication(), rbtnGrp.getChildCount(),
Toast.LENGTH_LONG).show();
/*String[] strtext = strval.split(",");
if (strtext.length > 0) {
}*/
}
Solution
private void fnRadioTextSet(String strval) {
RadioGroup rbtnGrp = (RadioGroup)findViewById(R.id.QueGroup1);
String[] strArrtext = strval.split(",");
for (int i = 0; i < rbtnGrp.getChildCount(); i++) {
((RadioButton) rbtnGrp.getChildAt(i)).setText(strArrtext[i]);
}
}