Sanchit Paurush
Sanchit Paurush

Reputation: 6152

How to make grid view scroll horizontally not vertically in android?

I have a dynamic Grid View. Means its content varies. So, if the number of items increases it makes vertical scroll. I want to make it as horizontal scroll.

Please suggest some solution for this.

Upvotes: 9

Views: 37350

Answers (3)

Ashish Soni
Ashish Soni

Reputation: 296

        <HorizontalScrollView
        android:layout_width="match_parent"
        android:layout_height="fill_parent"
        android:layout_below="@+id/seatLegendLayout">

        <FrameLayout
            android:layout_width="fill_parent"
            android:layout_height="match_parent">

            <LinearLayout
                android:id="@+id/linearLayout_gridtableLayout"
                android:layout_width="900dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <GridView
                    android:id="@+id/gridView1"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:layout_margin="4dp"
                    android:columnWidth="100dp"
                    android:gravity="center"
                    android:numColumns="9"
                    android:horizontalSpacing="1dp"
                    android:scrollbarAlwaysDrawHorizontalTrack="true"
                    android:scrollbarAlwaysDrawVerticalTrack="true"
                    android:scrollbars="horizontal"
                    android:stretchMode="none"
                    android:verticalSpacing="1dp">

                </GridView>


            </LinearLayout>
        </FrameLayout>
    </HorizontalScrollView>

Upvotes: 5

H Raval
H Raval

Reputation: 1903

you can use third party library two-way grid view. it works great for horizontal scrolling or you can use RecyclerView

Upvotes: 2

jaibatrik
jaibatrik

Reputation: 7523

You can try putting the GridView in a HorizontalScrollView. You may try to set fixed height to the GridView inside the HorizontalScrollView.

Then you can dynamically calculate the number of columns of the GridView based on your content and use setNumColumns(int) method to set it.

Upvotes: 1

Related Questions