teekib teekib - 23 days ago 7
Android Question

Android:placing the radio buttons horizontally

Below is my Relative layout..i am trying to place the radio buttons above the edittext

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FFFFFF" >

<ImageView
android:id="@+id/fbreplycancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:src="@drawable/fbcancel" />

<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="80dp"
android:layout_height="250dp"
android:layout_alignParentRight="true"
android:layout_below="@+id/fbcancel" >

<Spinner
android:id="@+id/replyspinner"
android:layout_width="50dp"
android:layout_height="30dp"
android:layout_alignLeft="@+id/fbshare"
android:layout_alignRight="@+id/fbshare"
android:layout_below="@+id/fbshare"
android:layout_marginTop="16dp"
android:drawSelectorOnTop="true"
android:entries="@array/fbcommentlist"
android:visibility="gone" />

<Button
android:id="@+id/fbshare"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="@drawable/fbbuttons"
android:text="@string/share" />

<ImageView
android:id="@+id/fbpeople"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/fbshare"
android:layout_centerHorizontal="true"
android:layout_marginBottom="19dp"
android:background="@drawable/people2"
android:drawSelectorOnTop="true"
android:paddingTop="20dp" />

<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="RadioButton" />
</RelativeLayout>

<View
android:layout_width="250dp"
android:layout_height="0.7dip"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/imageView1"
android:background="#3b5998" />

<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/fbcancel"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:paddingRight="2dp"
android:src="@drawable/askabud" />

<TextView
android:id="@+id/fbcommentpostedby"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/fbedittext"
android:layout_alignRight="@+id/fbcommentdisplay"
android:layout_below="@+id/imageView1"
android:layout_marginTop="15dp"
android:textColor="#000000" />

<TextView
android:id="@+id/fbcommentdisplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/fbedittext"
android:layout_below="@+id/fbcommentpostedby"
android:layout_toLeftOf="@+id/relativeLayout1"
android:textColor="#000000" />

<TextView
android:id="@+id/fbtextview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/imageView1"
android:layout_toLeftOf="@+id/fbreplycancel"
android:layout_toRightOf="@+id/imageView1"
android:text="@string/replyrecommend"
android:textSize="18sp"
android:textColor="#000000"/>

<TextView
android:id="@+id/fbplacename"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/fbcommentdisplay"
android:layout_alignRight="@+id/fbcommentdisplay"
android:layout_below="@+id/fbcommentdisplay"
android:textColor="#000000" />

<EditText
android:id="@+id/fbedittext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fbplacename"
android:layout_marginLeft="19dp"
android:layout_marginTop="45dp"
android:layout_toLeftOf="@+id/relativeLayout1"
android:background="@drawable/roundcorners"
android:ems="10"
android:hint="@string/fbhint"
android:lines="6"
android:scrollHorizontally="true"
android:textSize="14sp"
android:windowSoftInputMode="stateHidden" />

<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fbplacename" >

<RadioButton
android:id="@+id/radio0"
android:layout_width="30dp"
android:layout_height="30dp"
android:checked="true"
android:text="1"
/>
</RadioGroup>

<RadioGroup
android:id="@+id/radioGroup2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/radioGroup1"
android:layout_toLeftOf="@+id/relativeLayout1" >

<RadioButton
android:id="@+id/radio0"
android:layout_width="26dp"
android:layout_height="wrap_content"
android:checked="true"
android:text="3" />

<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RadioButton" />
</RadioGroup>

<RadioButton
android:id="@+id/radio1"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_alignTop="@+id/radioGroup2"
android:layout_toLeftOf="@+id/radioGroup2"
android:text="2" />

</RelativeLayout>


Iam facing a hard time to arrange them horizontally.Any help is appreciated.

Answer

To place a radiogroup (or any other view) above other just do:

android:layout_above="@+id/view_below"

To change the orientation just set:

android:orientation="horizontal"

And to give equal width to items make use of layout_weight:

<RadioGroup
    android:id="@+id/radio_group"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_above="@+id/view_below" >

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="First" />

    <RadioButton
        android:id="@+id/radio2"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:text="Second" />
</RadioGroup>