0

I want to design a layout as shown :

enter image description here

but im not getting exactly the same layout. I want the same layout and same buttons but just getting trouble to align it properly. The code should also work for multiple dimension device.My code is:

<?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="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

<LinearLayout
    android:id="@+id/LinearLayout05"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/LinearLayout02"
    android:layout_alignRight="@+id/LinearLayout04"
    android:layout_margin="25dip"
    android:layout_weight="0.53"
    android:alignRight="@id/LinearLayout04"
    android:background="#0000ff" >

    <LinearLayout
        android:id="@+id/LinearLayout06"
        android:layout_width="116dp"
        android:layout_height="137dp"
        android:layout_marginTop="14dip"
        android:background="@drawable/active_user"
        android:gravity="bottom"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/TextView03"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.53"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>
</LinearLayout>

<LinearLayout
    android:id="@+id/LinearLayout02"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/rl2"
    android:layout_margin="25dip"
    android:layout_toLeftOf="@+id/LinearLayout05"
    android:layout_weight="0.53"
    android:background="#0000ff" >

    <LinearLayout
        android:id="@+id/LinearLayout01"
        android:layout_width="match_parent"
        android:layout_height="112dp"
        android:layout_marginTop="14dip"
        android:layout_weight="0.42"
        android:background="@drawable/active_user"
        android:gravity="bottom"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/TextView01"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.53"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>
</LinearLayout>

<LinearLayout
    android:id="@+id/LinearLayout04"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_margin="25dip"
    android:layout_marginRight="92dp"
    android:layout_marginTop="56dp"
    android:background="#0000ff" >

    <LinearLayout
        android:id="@+id/LinearLayout03"
        android:layout_width="150dp"
        android:layout_height="113dp"
        android:layout_marginTop="14dip"
        android:background="@drawable/active_user"
        android:gravity="bottom"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/TextView02"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.53"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>
</LinearLayout>

<LinearLayout
    android:id="@+id/rl2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/LinearLayout02"
    android:layout_alignTop="@+id/LinearLayout04"
    android:layout_margin="25dip"
    android:background="#0000ff" >

    <LinearLayout
        android:id="@+id/linearLayout4"
        android:layout_width="143dp"
        android:layout_height="116dp"
        android:layout_marginTop="14dip"
        android:background="@drawable/active_user"
        android:gravity="bottom"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/button2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.53"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>
</LinearLayout>

</RelativeLayout>
4
  • You might want to look at GridLayout. Commented Aug 23, 2013 at 10:48
  • I tried but with no success. Any useful links..? Commented Aug 23, 2013 at 10:52
  • you can use custom gridview for this.. Commented Aug 23, 2013 at 10:55
  • How to set button as an adapter for custom gridview. I googled it but unable to find good links. Commented Aug 23, 2013 at 10:56

4 Answers 4

2

How about this:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center" >

<TableLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/ic_launcher" >
        </Button>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/ic_launcher" >
        </Button>
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/ic_launcher" >
        </Button>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/ic_launcher" >
        </Button>
    </TableRow>
</TableLayout>

</LinearLayout>
Sign up to request clarification or add additional context in comments.

Comments

0

Try this...

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center" >

<LinearLayout
    android:id="@+id/LinearLayout05"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="center"
     >

    <LinearLayout
        android:id="@+id/LinearLayout06"
        android:layout_width="0dp"
        android:layout_height="137dp"
        android:layout_weight="0.5"
        android:layout_margin="5dp"
    android:gravity="center"
        android:background="#629AA7" >

        <TextView
            android:id="@+id/TextView03"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>


    <LinearLayout
        android:id="@+id/LinearLayout01"
        android:layout_width="0dp"
        android:layout_height="137dp"
        android:layout_weight="0.5"
        android:layout_margin="5dp"
    android:gravity="center"
        android:background="#629AA7">

        <TextView
            android:id="@+id/TextView01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>
</LinearLayout>

<LinearLayout
    android:id="@+id/LinearLayout04"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <LinearLayout
        android:id="@+id/LinearLayout03"
        android:layout_width="0dp"
        android:layout_height="137dp"
        android:layout_weight="0.5"
    android:gravity="center"
        android:layout_margin="5dp"
    android:background="#629AA7">

        <TextView
            android:id="@+id/TextView02"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>



    <LinearLayout
        android:id="@+id/linearLayout4"
        android:layout_width="0dp"
        android:layout_height="137dp"
        android:layout_weight="0.5"
    android:gravity="center"
        android:layout_margin="5dp"
    android:background="#629AA7">

        <TextView
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Button" />
    </LinearLayout>
</LinearLayout>

</LinearLayout>

Comments

0

You can try this, Just copy and paste this xml, and change with your images

     <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="YOUR TEXT"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:src="@drawable/ic_launcher" />

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:src="@drawable/ic_launcher" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:src="@drawable/ic_launcher" />

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:src="@drawable/ic_launcher" />
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

Comments

0

Coincidentally, an app I'm working on uses an identical layout - four buttons in a 2x2 square. The way we solved it follows this structure:

<LinearLayout android:orientation="vertical" ...>

    <LinearLayout android:orientation="horizontal">
        <Button ... />
        <Button ... />
    </LinearLayout>

    <LinearLayout android:orientation="horizontal">
        <Button ... />
        <Button ... />
    </LinearLayout>

</LinearLayout>

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.