1

在我的应用程序中,我需要通过代码创建一个RadioGroup2 RadioButtons。我需要将 RadioButtons 内部对齐RadioGroup,一个在左侧,另一个在RadioGruop. 我知道如果我将单选按钮添加到 LinearLayout 这些将解决这个问题,但在这种情况下 RadioGroup 的属性,一次只检查一个 RadioButton 不再可用。这是我的代码:

 TableRow.LayoutParams lp_radio1 = new TableRow.LayoutParams(
                                                TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT);
TableRow.LayoutParams lp_radio2 = new TableRow.LayoutParams(
                                                TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT);
TableRow.LayoutParams lp_radiogr = new TableRow.LayoutParams(
                                                width, height);
    lp_radio1.setMargins(left, left, top2, 0);
    lp_radio1.gravity=Gravity.LEFT;
    lp_radio1.weight=1;
    lp_radio2.setMargins(left, left, top2, 0);
    lp_radio2.gravity=Gravity.RIGHT;
    lp_radio2.weight=1;

    product_radiogroup = new RadioGroup(viewToLoad.getContext()); 
           product_radiogroup.setLayoutParams(lp_radiogr);                                             product_radiogroup.setOrientation(RadioGroup.HORIZONTAL);                                   product_radiogroup.setBackgroundResource(R.drawable.radio_group_background);
    product_radiobuttonYES = new RadioButton(viewToLoad.getContext());
    product_radiobuttonYES.setLayoutParams(lp_radio1); 

product_radiobuttonYES.setTextColor(R.color.medium_gray);        
    product_radiobuttonNO = new RadioButton(viewToLoad.getContext());
    product_radiobuttonNO.setLayoutParams(lp_radio2);
    product_radiobuttonNO.setTextColor(R.color.medium_gray);
    product_radiogroup.addView(product_radiobuttonYES);
    product_radiogroup.addView(product_radiobuttonNO);

这是我的结果:

在此处输入图像描述

有谁知道如何解决这个问题?提前致谢。

4

1 回答 1

1

我不认为这个解决方案是一个很好的解决方案,但既然你知道你的确切width和,只需将height你的设置设置为而不是和其他属性,例如和打开并且可以删除。radiogroupwidthradiobuttonwidth/2wrap_contentweightgravitylp_radio1lp_radio2

于 2012-09-05T08:21:45.303 回答