2012-03-16 14 views
5

Tôi có một bố trí tuyến tính có chứa listview sau:Tại sao bộ chia không hiển thị trong listview @android: id/list?

<ListView 
    android:id="@android:id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:cacheColorHint="#00000000" 
    android:divider="#FF0000" 
    android:dividerHeight="4dp" 
    /> 

và bố trí được sử dụng bởi một ListActivity, vấn đề là các dòng sau trong ListView xml không có hiệu lực:

 android:divider="#FF0000" 
    android:dividerHeight="4dp" 

và bộ chia mặc định được đặt. Bạn có lý do tại sao điều này xảy ra và làm thế nào để sửa chữa nó?

+0

tôi kiểm tra nó và nó làm việc cho tôi và chia màu đỏ ,,,, –

Trả lời

3

sự khác biệt của dp và px.

sử dụng này

android:dividerHeight="4px" 

thay vì

android:dividerHeight="4dp" 

và sử dụng này còn nếu bạn muốn

int[] colors = {0, 0xFFFF0000, 0}; // red for the example 
myList.setDivider(new GradientDrawable(Orientation.RIGHT_LEFT, colors)); 
myList.setDividerHeight(1); 

bạn sẽ nhận được nó ..

+0

tôi chọn dp là mật độ hiển thị độc lập nhưng tôi cũng cung cấp cho px thử và không làm việc . – Jimmy

+0

xem bài viết này, bạn sẽ nhận được một số ý tưởng http://danroundhill.com/2009/12/18/working-with-the-android-listview/ –

+0

Ngăn chia độ dốc đẹp. : o) –

1

nó giải quyết bây giờ là. vấn đề là trước khi tôi quyết định để làm cho danh sách trong xml tôi đã có mã này trong listActivity tôi để thêm chia được trọng xml:

int[] colors = { 0xA8A8A8A8, 0xFFFFFFFF, 0xA8A8A8A8 }; 
getListView().setDivider(new GradientDrawable(Orientation.RIGHT_LEFT, colors)); 
getListView().setDividerHeight(1); 
2

Đối với tôi đây là làm việc một cách hoàn hảo:

<ListView 
    android:id="@+id/listHomeScreen" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:cacheColorHint="#000" 
    android:divider="#7F7F7F" 
    android:dividerHeight="1dip" 
    android:listSelector="@android:color/transparent" > 
</ListView> 

Đảm bảo chúng tôi không ghi đè android: dividerHeight hoặc màu chia.