user3789211
user3789211

Reputation: 65

How can i change this android layout?

Layout Image :

http://s18.postimg.org/kihvabse1/Capture.jpg

given above is an android interface that I created How can I get these buttons inside the layout as you can see on the right corner it doesnt show the whole button

XML Code:

<ScrollView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/scrollView" >

    <GridLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/gridLayout"
        android:layout_centerInParent="true">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button"
            android:layout_row="0"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button2"
            android:layout_row="0"
            android:layout_column="1"
            android:layout_gravity="center_vertical|fill_vertical"
            android:layout_rowSpan="2" />

        <Button
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button3"
            android:layout_row="0"
            android:layout_column="2"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical"  />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button4"
            android:layout_row="3"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="fill_horizontal|center"
            android:layout_columnSpan="2" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Button"
            android:id="@+id/button5"
            android:layout_row="4"
            android:layout_column="2"
            android:layout_gravity="center_vertical|fill_vertical" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="119dp"
            android:text="New Button"
            android:id="@+id/button6"
            android:layout_row="6"
            android:layout_column="0"
            android:layout_gravity="center|fill" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button7"
            android:layout_row="6"
            android:layout_column="1"
            android:layout_gravity="fill_horizontal|center"
            android:layout_columnSpan="2" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button8"
            android:layout_row="10"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button9"
            android:layout_row="10"
            android:layout_column="1"
            android:layout_rowSpan="1"
            android:layout_gravity="center_vertical|fill_vertical" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button10"
            android:layout_row="10"
            android:layout_column="2"
            android:layout_rowSpan="2"
            android:layout_gravity="center_vertical|fill_vertical" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button11"
            android:layout_row="12"
            android:layout_column="0"
            android:layout_rowSpan="2"
            android:layout_gravity="fill_horizontal|center"
            android:layout_columnSpan="2" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="120dp"
            android:text="New Button"
            android:id="@+id/button12"
            android:layout_row="13"
            android:layout_column="2"
            android:layout_gravity="center_vertical|fill_vertical" />


    </GridLayout>
</ScrollView>

Upvotes: 1

Views: 78

Answers (2)

Adam Stelmaszczyk
Adam Stelmaszczyk

Reputation: 19847

Outer layout can be a simple LinearLayout with vertical orientation.

In that layout place horizontal LinearLayouts for the rows. In them put your buttons, with weight to control their width ratio.

Upvotes: 0

Yogendra
Yogendra

Reputation: 5288

To achieve this layout you can have two way :

  1. Use SymmetricGridview and Customize it. I hope it will work. https://github.com/felipecsl/AsymmetricGridView

  2. Use list view and use adapter. In adapter inflate this view

    Position 1 : Use first layout and inflate data. Position 2 : Use second layout and inflate data. Position 3 : Use third layout and inflate data.

And manage your data according to your position value. I hope above point will help.

Upvotes: 1

Related Questions