If this is what you are asking about, here is what i would do. There is probably a better way, but this works well enough for me.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/radioGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="top|left">
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radioOneText" />
<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radioTwoText"
android:layout_toRightOf="@id/radio1"
android:layout_alignBaseline="@id/radio1"
android:layout_marginLeft="10dp" />
<RadioButton
android:id="@+id/radio3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radioThreeText"
android:layout_below="@id/radio1"
android:layout_alignLeft="@id/radio1" />
<RadioButton
android:id="@+id/radio4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radioFourText"
android:layout_below="@id/radio2"
android:layout_toRightOf="@id/radio3"
android:layout_alignBaseline="@id/radio3"
android:layout_alignLeft="@id/radio2" />
</RelativeLayout>
Here is an example of using 'setOnClickListener' to handle the changes...
package com.example.breakable;
import android.os.*;
import android.app.*;
import android.view.View;
import android.widget.*;
public class MainActivity extends Activity
{
RadioButton radioOne;
RadioButton radioTwo;
RadioButton radioThree;
RadioButton radioFour;
@Override
public void onCreate(Bundle icicle)
{
super.onCreate(icicle);
setContentView(R.layout.main);
radioOne = (RadioButton)findViewById(R.id.radio1);
radioTwo = (RadioButton)findViewById(R.id.radio2);
radioThree = (RadioButton)findViewById(R.id.radio3);
radioFour = (RadioButton)findViewById(R.id.radio4);
radioOne.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (radioTwo.isChecked()){
radioTwo.setChecked(false);
radioOne.setChecked(true);
} else if (radioThree.isChecked()) {
radioThree.setChecked(false);
radioOne.setChecked(true);
} else if (radioFour.isChecked()) {
radioFour.setChecked(false);
radioOne.setChecked(true);
} else {
radioOne.setChecked(true);
}
}
});
radioTwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (radioOne.isChecked()){
radioOne.setChecked(false);
radioTwo.setChecked(true);
} else if (radioThree.isChecked()) {
radioThree.setChecked(false);
radioTwo.setChecked(true);
} else if (radioFour.isChecked()) {
radioFour.setChecked(false);
radioTwo.setChecked(true);
} else {
radioTwo.setChecked(true);
}
}
});
radioThree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (radioOne.isChecked()){
radioOne.setChecked(false);
radioThree.setChecked(true);
} else if (radioTwo.isChecked()) {
radioTwo.setChecked(false);
radioThree.setChecked(true);
} else if (radioFour.isChecked()) {
radioFour.setChecked(false);
radioThree.setChecked(true);
} else {
radioThree.setChecked(true);
}
}
});
radioFour.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (radioOne.isChecked()){
radioOne.setChecked(false);
radioFour.setChecked(true);
} else if (radioTwo.isChecked()) {
radioTwo.setChecked(false);
radioFour.setChecked(true);
} else if (radioThree.isChecked()) {
radioThree.setChecked(false);
radioFour.setChecked(true);
} else {
radioFour.setChecked(true);
}
}
});
}
}