2016-12-18 133 views
1

我有一個簡單的佈局和回收站。我用適配器餵它,併爲回收商設置GridLayoutManager帶GridLayoutManager的RecyclerView - 佈局項目

<android.support.v7.widget.RecyclerView 
android:id="@+id/scripts_recycler_view" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:layout_marginBottom="50dp" 
android:verticalSpacing="20dp" 
android:clipToPadding="false" 
android:orientation="vertical" 
app:layoutManager="android.support.v7.widget.GridLayoutManager" 
tools:listitem="@layout/tmpl_script" 
android:paddingBottom="20dp" 
android:layout_marginEnd="20dp" 
android:layout_marginRight="20dp" 
android:paddingTop="30dp" 
app:layout_gravity="center" /> 

活動

RecyclerView recyclerView = (RecyclerView)findViewById(R.id.scripts_recycler_view); 
recyclerView.setAdapter(adapter); 
int columns = getResources().getInteger(R.integer.scripts_columns); 
recyclerView.setLayoutManager(new GridLayoutManager(this, columns)); 
recyclerView.setHasFixedSize(true); 

項目

<LinearLayout 
android:layout_width="300dp" 
android:layout_height="300dp" 
android:background="@drawable/game_border" 
android:gravity="center" 
android:orientation="vertical"> 

我有兩個問題:

  1. 有行
  2. 項目不CENTE之間沒有空格紅色內

我試過Android Studio的所有屬性,但它們沒有任何效果。我GOOGLE了一下,打開了很多問題,但我仍然沒有運氣。我應該使用什麼魔法財產?

正如您所看到的項目位於屏幕左側。我想把它移到中心位置。第一排和第二排之間沒有空間。

enter image description here enter image description here

+0

任何人有想法,如何居中物品?我會添加單列的另一張照片。 –

+0

也許傳遞一個自定義佈局參數重心=中心?但我沒有找到一個二傳手。 –

+0

我交換了一個GridView,最後瓷磚居中。 –

回答

0

對於1.有行

之間嘗試android:layout_marginBottom="10dp"在item.This的線性佈局應該提供每個項目下方的間距沒有空間。

對於2.items未行

看起來你給右邊距爲您recyclerview並沒有左緣的中心。

android:layout_marginLeft="20dp" 
android:layout_marginStart="20dp" 

應在兩側給出相等的間距。 或設置

app:layout_gravity="center" 

在項目的線性佈局。

+0

廣告1)謝謝,這個工程。爲什麼它不在父容器中工作? –

+0

你是指1或2? –

+0

廣告2)這可以使它更好,但我想中心的項目,無論當前的尺寸。 –

2

(1)最簡單的解決方案是添加頂部和/或底部邊距,就像@suraj說的那樣。

關於(2) - 關鍵問題是您的物品是方形的。爲了得到它的工作,設置android:layout_width="match_parent"並改變你的項目的設計,使用兩個尺寸的實際較小的尺寸(寬度或高度)(也許你需要做的就是讓背景變爲正方形)。然後顯示項目的LinearLayout中心的內容(您已經這樣做了)。你必須這樣做,因爲GridLayoutManager目前不支持layout_gravity。

+0

謝謝。 GridView現在運行良好。 –

+1

我想通了。但是,既然我遇到了和你一樣的問題,並且具有相同的方形視圖細節,我決定解決它並幫助世界其他地方。 – Uli

+0

好的,upvoted ... –

相關問題