我正在做一個任務,它從服務器中檢索圖像並在應用程序的GridView中顯示。這個網格視圖是向上和向下滾動的。但是,當菜單屏幕滾動時,我想從左向右滾動此視圖。 網格視圖有可能嗎?還是有更好的方法來做到這一點?請幫助我這樣做。Android柵格視圖水平滾動
在此先感謝。
我正在做一個任務,它從服務器中檢索圖像並在應用程序的GridView中顯示。這個網格視圖是向上和向下滾動的。但是,當菜單屏幕滾動時,我想從左向右滾動此視圖。 網格視圖有可能嗎?還是有更好的方法來做到這一點?請幫助我這樣做。Android柵格視圖水平滾動
在此先感謝。
嘗試用下面的佈局
<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>
這不容易實現與普通的Android GridView控件。嘗試使用這個庫: two-way-gridview
(我發現這個庫在這個其他答案:Horizontal scrolling grid view)
有沒有什麼更好的方法來做到這一點?
是的,有。
可以在3行使用RecyclerView與水平GridLayoutManager實現這一點:
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.rec1);
recyclerView.setLayoutManager(new GridLayoutManager(this, 2, GridLayoutManager.HORIZONTAL, false));
recyclerView.setAdapter(new CustomAdapter(arrayList));
的RecyclerView支持與SDK 7或更大的構建的應用程序。
如果您想使其更容易,請參閱HorizontalGridView類,如果您正在使用爲API 17或更高版本構建的應用程序。
Here's a link一個簡單的RecyclerView適配器的例子。
當numbersOfRow = 1工作時,我使用了HorizontalGridView,但numbersOfRow> = 2時,垂直方向將不受控制。我無法找到任何設置垂直方向邊緣距離的方法,'setVerticalMargin(int margin)'可以垂直設置兩個子項之間的邊距(以像素爲單位)。 – Armysir
參見http://stackoverflow.com/questions/5418775/horizontal-scrolling-in-android-gridview。我還沒有找到讓GridView水平滾動的方法,似乎有一種解決方案是切換到Gallery,但只有一行。 –