2014-09-08 3 views
1

난 고정 크기 2x3 그리드, 총 6 항목이 있습니다. gridview 항목을 화면에 채울 수있는 방법이 있습니까? 및이 경우 Gridview가 좋은 선택입니까? 또는 다른 것을 사용해야합니까? 당신이 이미 6 개 항목이 있음을 알고있는 경우안드로이드 GridView 화면 높이에 맞게

enter image description here

답변

1

, 왜 단지 6 개 블록을 만들 수 없습니다. 즉, 6 개의 이미지가있는 경우 왜 6 개의 이미지 뷰를 만듭니 까?

enter image description here

예 :

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:weightSum="3" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:orientation = "horizontal" 
     android:layout_weight="1" 
     android:weightSum="100"> 

     <ImageView 
      android:id="@+id/image1" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_weight="50" 
      android:src="@drawable/sunny"/> 

     <ImageView 
      android:id="@+id/image2" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_weight="50" 
      android:src="@drawable/sunny"/> 

    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:orientation = "horizontal" 
     android:layout_weight="1" 
     android:weightSum="100"> 

     <ImageView 
      android:id="@+id/image3" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_weight="50" 
      android:src="@drawable/sunny"/> 

     <ImageView 
      android:id="@+id/image4" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_weight="50" 
      android:src="@drawable/sunny"/> 

    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:orientation = "horizontal" 
     android:layout_weight="1" 
     android:weightSum="100"> 

     <ImageView 
      android:id="@+id/image5" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_weight="50" 
      android:src="@drawable/sunny"/> 

     <ImageView 
      android:id="@+id/image6" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_weight="50" 
      android:src="@drawable/sunny"/> 

    </LinearLayout> 

</LinearLayout> 
+1

중첩 된 계층 구조를 사용하면 성능 문제가 발생할 수 있으므로 일반적으로 바람직하지 않습니다. 더 많은 정보는 여기 : http://developer.android.com/training/improving-layouts/optimizing-layout.html – aga

1

경우 GridView 항상 고정 된 크기의 수와 동시에 (그래서 당신은 스크롤 기능이 필요하지 않습니다) 내가 제안 화면의 모든 항목에 맞게해야합니다 대신 GridLayout을 사용합니다. layout_widthlayout_height 속성을 match_parent으로 설정하면 전체 GridLayout을 화면에 쉽게 맞출 수 있습니다.