caiser
caiser

Reputation: 107

Android - Layout with images

I've been working on this for few days but I couldn't get the layout I need. I would like to have a layout similar to the image below. Can anyone guide me with this ? What kind of layout and view should I use ?

enter image description here

Thanks :)

Upvotes: 4

Views: 31116

Answers (5)

Jayyrus
Jayyrus

Reputation: 13051

You could use a LinearLayout. In the first row you can add another two LinearLayouts with horizontal orientation. So: LinearLayout container (orientation horizontal). In the first row add two LinearLayouts with vertical orientation. First coloumn image1, second column LinearLayout with horizontal orientation (every row image 2,3,4). Return to container, on the second row add image 5 :)

Upvotes: 1

Ash
Ash

Reputation: 1721

Try this:

<!-- Root layout -->
<LinearLayout android:id="@+id/container"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical">
    <!-- Layout for img1,2,3,4 -->
    <LinearLayout android:id="@+id/img1234
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  android:orientation="horizontal">
        <!-- ImageView for img1 -->
        <LinearLayout android:id="@+id/img234"
                      android:layout_width="match_parent"
                      android:layout_height="match_parent"
                      android:orientation="vertical">
            <!-- ImageView for img2 -->
            <!-- ImageView for img3 -->
            <!-- ImageView for img4 -->           
        </LinearLayout>

    </LinearLayout>
    <!-- Here should be ImageView for img5. Either use weight (to ensure proportions)
         or set an absolute height in dp -->
</LinearLayout>

Excuse me for possible typos.

Upvotes: 0

bindal
bindal

Reputation: 1932

i am giving only prototype of layout may be it will help you look at that

<linearLayout main android;orientation="vertical">
<linearlayout "sub1" android;orientation="horizontal">
<linearlayout android:layout_wight="1" "take first lesthand side image in it" >
<linearlayout android:layout_wight="1" "sub2" android:orientation="vertical" >
"take three linearlayout and set three images in that take a weight as 1 for all three linearlayout "
<close sub2 linear layout>
<close sub1 linear layout>

take another linear layout and set last bottom image in it

Upvotes: 0

johanlindholm
johanlindholm

Reputation: 136

Ive added some code generated by drawing what you want in the layout editor in eclipse.

Looks like this

Layouts

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



<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/linearLayout2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0.81" >


        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="1.00"
            android:src="@drawable/ic_launcher" />


        <LinearLayout
            android:id="@+id/linearLayout3"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:orientation="vertical" >


            <ImageView
                android:id="@+id/ImageView02"
                android:layout_width="fill_parent"
                android:layout_height="0dp"
                android:layout_weight="1.00"
                android:src="@drawable/ic_launcher" />


            <ImageView
                android:id="@+id/ImageView01"
                android:layout_width="fill_parent"
                android:layout_height="0dp"
                android:layout_weight="1.00"
                android:src="@drawable/ic_launcher" />

            <ImageView
                android:id="@+id/imageView3"
                android:layout_width="fill_parent"
                android:layout_height="0dp"
                android:layout_weight="1.00"
                android:src="@drawable/ic_launcher" />

        </LinearLayout>

    </LinearLayout>


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

</LinearLayout>

</LinearLayout>

Upvotes: 9

Shashank Kadne
Shashank Kadne

Reputation: 8101

Use TableLayout for your views.

Upvotes: 0

Related Questions