Reputation: 1665
I am doing a task which retrieves images from server and displays in GridView in the application. This Grid view is scrolling up and down. But i want to scroll this view left to right as the menu screen scrolls. Is it possible with grid view? Or Is there any better way to do this? please help me in doing this.
thanks in advance.
Upvotes: 7
Views: 24005
Reputation: 12866
Is there any better way to do this?
Yes, there is.
You can achieve this in 3 lines using a RecyclerView with a horizontal GridLayoutManager:
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.rec1);
recyclerView.setLayoutManager(new GridLayoutManager(this, 2, GridLayoutManager.HORIZONTAL, false));
recyclerView.setAdapter(new CustomAdapter(arrayList));
The RecyclerView supports applications built with the SDK 7 or larger.
If you want to make it even easier, take a look at the HorizontalGridView class if you are working with an application that is built for the API 17 or larger.
Here's a link of an example of a simple RecyclerView Adapter.
Upvotes: 4
Reputation: 3613
This isn't easily possible with the stock Android GridView. Try using this library: two-way-gridview
(I found this library in this other answer: Horizontal scrolling grid view)
Upvotes: 6
Reputation: 3117
Try with below layout
<HorizontalScrollView android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<GridView android:layout_width="wrap_content" android:layout_height="wrap_content"
android:id="@+id/gridview" android:columnWidth="50dp" android:padding="10dp"
android:horizontalSpacing="8dp" android:verticalSpacing="12dp"
android:numColumns="3" android:scrollbars="horizontal"/>
</HorizontalScrollView>
Upvotes: -6