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

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-30 15:50:24  来源:igfitidea点击:

How to set text to RadioButton which is inside of a RadioGroup programmatically?

javaandroid

提问by Rajkumar Reddy

I have a RadioGroupinside of which I have some RadioButtons.

我有一个RadioGroup里面我有一些RadioButtons。

I want to set some text on the RadioButtons programmatically. I used following code for that using that I'm unable to access the RadioButtons inside of the RadioGroupusing Java.

我想以RadioButton编程方式在s上设置一些文本。我使用了以下代码,因为我无法访问using JavaRadioButton内部的s RadioGroup

How can I set the text on a RadioButtoninside 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");