Raju
Raju

Reputation: 767

Android RadioGroup checks more than one RadioButton?

I am using RadioGroup, added RadioButton rdbut to RadioGroup rdgrp like rdgrp.addView(rdbut).

   for(int j=0;j<3;j++)
   {
         RadioGroup rdgrp = new RadioGroup;
         for(int i=0;i<=10;i++)
         {
             RadioButton rdbut = new RadioButton(this);
             rdbut.setText("RadioButtion"+i);
             rdbut.setId(i);
             rdbut.setTag("somename");
             rdgrp.addView(rdbut);
         }
    }    

the above code shows how I initialize the radiogroup and radio button. after I run the this code, in emulator/mobile , i am able to check 2 radio buttons at a time.

What could be the problem?

Upvotes: 1

Views: 3627

Answers (3)

Herry
Herry

Reputation: 7087

Use Some thing like this xml design in user layout file.

   <TableLayout
            android:id="@+id/tbl_layoutchoice"
            style="@style/InfoTableView"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="3dip" >

            <RadioGroup
                android:id="@+id/SelectLayout_Group"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" >
            </RadioGroup>
 </TableLayout>

and For Use this RadioGroup in Activity 's OnCreate() Method and findView like this

 mRadioGroup = (RadioGroup) this.findViewById(R.id.SelectLayout_Group);

and Then Use Below Code With Your Require Change To Add Radio Button in One RadioGroup.Use Also Below Require Declaration for Create Radio Button Dynamically.

     ArrayList<String> layoutlist = new ArrayList<String>(3);
     int index = -1;
     LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT,
        LayoutParams.WRAP_CONTENT);


   for (String layout : layoutlist) {
        RadioButton r = new RadioButton(this);
        index++;
        r.setText(layout);
        r.setId(index);
        r.setLayoutParams(lp);
        r.setTextAppearance(this, R.style.TextBase);


        mRadioGroup.addView(r);


    }

So don't forget to add your String Value in layoutlist before for loop .and R.style is some Require Style for Text Show in RadioButton.

Upvotes: 0

Sunil Kumar Sahoo
Sunil Kumar Sahoo

Reputation: 53687

You have created three different Radio Group. You can select only one radio button from a single group.So from three groups you can select three buttons But there is no inter-group relationship. You can select radio buttons from different group simultaneously. In your case you can select three buttons at max.

Thanks Sunil

Upvotes: 0

Ramesh Akula
Ramesh Akula

Reputation: 5750

Change your code like this.

  RadioGroup rdgrp[] = new RadioGroup[3];

  For(int j=0;j<3;j++)
   {
         RadioButton rdbut[] = new RadioButton[10];
         For(int i=0;i<=10;i++)
         {

             rdbut[i].setText("RadioButtion"+i);
             rdbut[i].setId(j*100+i);
             rdbut[i].setTag("somename");
             rdgrp[j].addView(rdbut[i]);
         }
    } 

Upvotes: 1

Related Questions