2015-12-02 30 views
0

只是在一個簡單的佈局上工作,我想知道是否有一種方法來自動調整gridview的大小?在不同的旋轉上調整GridView的大小

我的垂直旋轉視圖的樣子:

enter image description here

但我的水平旋轉視圖的樣子:

enter image description here

此刻我的佈局代碼:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context="baegmon.mesmerize.GameActivity"> 


<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="Timer" 
    android:id="@+id/textView_Timer" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" /> 



<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="Score" 
    android:id="@+id/textView_Score" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" /> 


<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="Question" 
    android:layout_weight="1" 
    android:id="@+id/textView_Question" 
    android:layout_below="@+id/textView_Timer" 
    android:layout_centerHorizontal="true" /> 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_below="@+id/textView_Question" 
    android:layout_alignParentBottom="true"> 

    <GridView 
     android:id="@+id/gridView_Game" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="0" 
     android:columnWidth="100dp" 
     android:drawSelectorOnTop="true" 
     android:gravity="center" 
     android:numColumns="5" 
     android:stretchMode="columnWidth" 
     android:verticalSpacing="5dp" 
     android:clickable="true" 
     android:layout_centerInParent = "true" 
     /> 

</RelativeLayout> 

是否有任何方法可以在水平視圖中自動調整大小,以便所有的GridView適合佈局?任何幫助,將不勝感激。

謝謝。

+3

爲這一個創建兩個佈局是爲正常和另一個爲景觀。 –

回答

0

問題不在GridView大小,但在GridView中單元格大小。

所有的單元格都無法適應屏幕,因爲每個單元格的高度都需要按GridView的高度進行擬合。那就是爲什麼GridView讓你的內容可以滾動。

只要嘗試更改單元格大小。

此外,由於android:stretchMode="columnWidth",您的單元格的寬度會縮小,這就是爲什麼在第二種情況下單元格之間的水平間距很大。

嘗試刪除或替換該行。

+0

我實際上是通過爲@Nigam_Patro創建一個單獨的水平視圖佈局來修復它,然後我做了你寫的東西,並修改了一行'android:verticalSpacing =「 - 8dp」'解決了這個問題。 –