java 如何以编程方式将文本设置为 RadioGroup 内的 RadioButton?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/6426317/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to set text to RadioButton which is inside of a RadioGroup programmatically?
提问by Rajkumar Reddy
I have a RadioGroup
inside of which I have some RadioButton
s.
我有一个RadioGroup
里面我有一些RadioButton
s。
I want to set some text on the RadioButton
s programmatically. I used following code for that using that I'm unable to access the RadioButton
s inside of the RadioGroup
using Java.
我想以RadioButton
编程方式在s上设置一些文本。我使用了以下代码,因为我无法访问using JavaRadioButton
内部的s RadioGroup
。
How can I set the text on a RadioButton
inside a RadioGroup
?
如何在 aRadioButton
内设置文本RadioGroup
?
XML Layout:
XML 布局:
<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) {
}*/
}
回答by mish
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]);
}
}
回答by PedroAGSantos
Don't need the loop
不需要循环
rbtnYes.settext("sdklfhjsdf");
rbtnNo.settext("test");
rbtnDontKnow.settext("test");