2011-11-01 60 views
9

Tôi đang phát triển Ứng dụng Android có listview trong một activity. Tôi đã triển khai listview trong một hoạt động. Theo mặc định, trong khi cuộn danh sách, nền của toàn bộ danh sách thay đổi thành màu đen. Vì vậy, tôi đã đưa ra thông số này: android:cacheColorHint = "#000000".Android - Xóa CacheColorHint cho ListView

Bây giờ trong khi đi đến cuối danh sách, nền trắng sẽ hiển thị ở cuối.

Vì vậy, ở đây câu hỏi của tôi là

Làm thế nào để loại bỏ các cacheColorHint, chỉ hiển thị nền của hoạt động thay vì color?.

Vui lòng giúp tôi với Liên kết/Mã mẫu.

Trả lời

47

Bạn có thể sử dụng:

android:cacheColorHint="@android:color/transparent" 
+0

@ToddDavies có may Android đã loại bỏ tất cả những bài báo trong khi cập nhật trang web bằng thiết kế tin tức. –

+4

Tôi không biết liên kết ban đầu là gì, nhưng [đây] (http://www.curious-creature.org/2008/12/22/why-is-my-list-black-an-android-optimization /) một bài báo của RomainGuy (người Google đã viết ListView) giải thích cơ chế chi tiết hơn một chút. – matt

+0

điều gì sẽ xảy ra nếu bạn sử dụng android: cacheColorHint = "@ null" thay thế? –

2

tôi đã làm một cái gì đó như thế này tôi không có vấn đề

<ListView 
    android:layout_height="wrap_content" 
    android:id="@+id/listView" 
    android:layout_width="match_parent" 
    android:cacheColorHint="#00000000" 
    android:divider="#00000000"/> 

đang thử màu # 00000000

0

Hãy thử điều này:

android:background="@drawable/bg" 
android:cacheColorHint="#00000000" 
2

Tại file layout, sử dụng:

android:cacheColorHint="#0000" 

và tại mã java, sử dụng

listView.setCacheColorHint(Color.TRANSPARENT); 
1

Sử dụng này:

android:cacheColorHint="@null"