2010-12-13 30 views
7

Vì vậy, hãy cố gắng giải thích những gì tôi đang cố gắng để làm ...Có thể tạo GridView có con với các kích thước khác nhau không?

Tôi có một thiết kế trông như thế này -

[alt text] [1]

Đối với điều này tôi có tôi đã tạo hai GridView giống như vậy:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:orientation="vertical" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content"> 

    <LinearLayout android:orientation="vertical" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"> 

     <TextView style="@style/GroupName" 
        android:text="@string/currency_badges"/> 

     <GridView android:id="@+id/currency_grid" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:columnWidth="90dp" 
        android:numColumns="auto_fit" 
        android:verticalSpacing="10dp" 
        android:horizontalSpacing="10dp" 
        android:stretchMode="columnWidth" 
        android:gravity="left"/> 

    </LinearLayout> 

    <LinearLayout android:orientation="vertical" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"> 

     <TextView style="@style/GroupName" 
        android:text="@string/foursquare_badges"/> 

     <GridView android:id="@+id/foursquare_grid" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:columnWidth="90dp" 
        android:numColumns="auto_fit" 
        android:verticalSpacing="10dp" 
        android:horizontalSpacing="10dp" 
        android:stretchMode="columnWidth" 
        android:gravity="left"/> 

    </LinearLayout> 
</LinearLayout> 

Tôi không thực sự hài lòng với nó vì bạn có thể thấy nhãn biểu tượng trên cùng bên phải bị ẩn. Tôi có thể nhấp và cuộn nhưng đó không phải là những gì tôi muốn. Ngoài ra, vấn đề lớn hơn là mỗi GridView đều có SCROLLBAR riêng của mình. Một lần nữa không phải những gì tôi muốn. Vì vậy, tôi nghĩ rằng tôi muốn sử dụng một GridView để thực hiện việc này. Làm thế nào tôi có thể sử dụng một GridView để có các biểu tượng và sau đó hiển thị GroupName ở giữa các biểu tượng. Tôi biết tôi có thể tạo ra một BaseAdapter để trả về các loại Chế độ xem khác nhau, nhưng tôi cần phải có một mục mất toàn bộ không gian theo chiều ngang. Điều này có thể không?

Edit:

Tôi đoán một câu hỏi tốt hơn là cách để tôi tạo GridViews nhóm?

Trả lời

0

Tôi không chắc chắn cách bạn thêm các mục ngay bây giờ, nhưng bạn có thể xem bằng cách sử dụng SimpleAdapter. Nó cho phép bạn cung cấp bố cục xml và các mục bản đồ từ các đối tượng dữ liệu của bạn vào các vị trí trong bố cục xml. Có một số hướng dẫn để sử dụng nó nếu bạn thực hiện tìm kiếm nhanh.

+0

Đó là những gì tôi đang làm ngay bây giờ. Ngoại trừ tôi đang sử dụng BaseAdapter. Tôi biết tôi có thể trả về các Chế độ xem khác nhau. Câu hỏi của tôi là khi tôi đặt chiều rộng thành fill_parent, nó không hoạt động. –

+0

Xin lỗi, tôi nghĩ rằng tôi đã hiểu sai câu hỏi của bạn (Mặc dù SimpleAdapter có thể dễ sử dụng hơn BaseAdapter). Bạn đang nói rằng bạn muốn một widget hỗ trợ nhiều phần, mỗi phần có GridView trong đó. Tôi không nghĩ rằng có bất kỳ tiện ích như vậy ra khỏi hộp, bạn sẽ cần phải tạo riêng của bạn. Bạn mong đợi bao nhiêu biểu tượng? Nếu bạn không quan tâm đến việc tái sử dụng đối tượng GridView cung cấp cho bạn, bạn có thể dễ dàng thực hiện những gì bạn muốn với một LinearLayout hoặc TableLayout trong một ScrollView. –

+0

Sau khi xem xét cẩn thận, tôi nghĩ rằng điều này là không thể. Bạn đúng và tôi cần phải tạo ra widget của riêng tôi mà không phải là giá trị thời gian của tôi ngay bây giờ. –

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