2011-10-24 38 views
34

Tôi có chế độ xem lưới trong đó tôi có rất nhiều mục trong ba colums. Tôi muốn tăng khoảng cách giữa chúng. Làm thế nào tôi có thể làm điều đó trong android?Tăng khoảng cách lưới trong android

Trả lời

109

Bạn có thể sử dụng android:verticalSpacingandroid:horizontalSpacing trong thẻ GridView và cung cấp khoảng cách theo yêu cầu của bạn.

Ví dụ:

<GridView 
     android:layout_height="wrap_content" 
     android:id="@+id/gridView1" 
     android:layout_width="match_parent" 
     android:numColumns="auto_fit" 
     android:horizontalSpacing="10dp"  // space between two items (horizontal) 
     android:verticalSpacing="10dp">  // space between two rows (vertical) 
    </GridView> 
+0

câu trả lời bạn đã nêu ở đây cung cấp khoảng cách giữa các mục lưới nhưng làm thế nào để tôi có được khoảng cách giữa các mục lưới 1 hàng và thanh hành động? –

+0

@Ramswaroop bạn không thể sử dụng ký quỹ cho điều đó? –

+0

Tôi đã thử với 'marginTop' trên mục lưới nhưng nó không hoạt động, tôi cũng áp dụng' paddingTop' trong 'GridView' và tôi có khoảng cách nhưng khi tôi cuộn khoảng cách vẫn còn, xem ảnh chụp màn hình để rõ ràng hơn http: // imgur. com/LBrB6N5 –

2

sử dụng này trong BaseAdapter

imageView.setLayoutParams(new GridView.LayoutParams(150, 150)); 
imageView.setPadding(1, 1, 1, 1); 
+0

hoạt động? bằng cách thêm vào bộ chuyển đổi –

1

Tôi đã cố gắng sử dụng

android: horizontalSpacing android: verticalSpacing

và nó đã cho tôi không thành công.

Vì vậy, về cơ bản tôi đã thêm lề cho tất cả các phần tử của mình. Có lẽ, đó là một điểm tốt hơn ở đó, bởi vì bạn có thể cấu hình như phần tử MỌI bằng cách này.

Đây là những gì nó trông giống như theo cách của tôi

<GridLayout 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_centerInParent="true" 
android:columnCount="2" 
android:rowCount="3"> 
<ImageView 
    android:id="@+id/imageView2" 
    android:layout_width="128dp" 
    android:layout_height="128dp" 
    app:srcCompat="@drawable/ic_recipe" 
    android:layout_marginBottom="30dp" 
    android:layout_marginRight="15dp"/> 

<ImageView 
    android:id="@+id/imageView3" 
    android:layout_width="128dp" 
    android:layout_height="128dp" 
    app:srcCompat="@drawable/ic_add_recipe" 
    android:layout_marginBottom="30dp" 
    android:layout_marginLeft="15dp"/> 

<ImageView 
    android:id="@+id/imageView4" 
    android:layout_width="128dp" 
    android:layout_height="128dp" 
    app:srcCompat="@drawable/ic_favorite_recipies" 
    android:layout_marginBottom="30dp" 
    android:layout_marginRight="15dp"/> 

<ImageView 
    android:id="@+id/imageView6" 
    android:layout_width="128dp" 
    android:layout_height="128dp" 
    app:srcCompat="@drawable/ic_information" 
    android:layout_marginBottom="30dp" 
    android:layout_marginLeft="15dp"/> 

<ImageView 
    android:id="@+id/imageView5" 
    android:layout_width="128dp" 
    android:layout_height="128dp" 
    app:srcCompat="@drawable/ic_settings" 
    android:layout_marginRight="15dp"/> 

<ImageView 
    android:layout_width="128dp" 
    android:layout_height="128dp" 
    app:srcCompat="@drawable/ic_exit" 
    android:layout_marginLeft="15dp"/> 

Vì vậy, tôi có sáu hình ảnh trong GridLayout. Hai trong một hàng và ba hàng.

Các vấn đề liên quan