2017-01-09 20 views
49

Tôi đang sử dụng RecyclerView với GridLayoutManager và tôi có từng mục là CardView.Màu nền của thẻView luôn trắng

Thật không may, CardView ở đây dường như không thay đổi màu nền của nó. Tôi đã cố gắng trong bố trí và lập trình là tốt nhưng tôi đã cố gắng không có gì có vẻ làm việc.

Tôi đã gặp khó khăn trong một thời gian. Tôi đánh giá cao nếu ai đó có thể giúp tôi với vấn đề này.

+1

card_view: cardBackgroundColor = "@ android : màu/trắng "kiểm tra với điều này. –

+0

Cần mã để giúp – Manza

+0

Đó là mã rất dài vì vậy tôi đã không đăng nó. Hãy để tôi đăng một số mã có liên quan. – Ishaan

Trả lời

118

Nếu bạn muốn thay đổi màu nền thẻ, sử dụng:

app:cardBackgroundColor="@somecolor" 

như thế này:

<android.support.v7.widget.CardView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:cardBackgroundColor="@color/white"> 

</android.support.v7.widget.CardView> 

Edit: Như đã chỉ bởi @imposible, bạn cần bao gồm

xmlns:app="schemas.android.com/apk/res-auto" 

trong thẻ XML gốc của bạn để thực hiện chức năng này đoạn

+2

Cảm ơn câu trả lời của bạn, hãy đánh giá cao nó. – Ishaan

+1

Nó làm việc cho tôi khi tôi sử dụng nó như thế này ---> card_view: cardBackgroundColor = "@ màu/trắng" –

+1

Trong đó, có xmlns: Ứng dụng = "http://schemas.android.com/apk/res- tự động "được bao gồm trong tệp bố cục của bạn. – impossible

18

Bạn có thể làm điều đó hoặc trong XML hoặc theo trình tự:

Trong XML:

card_view:cardBackgroundColor="@android:color/red" 

lập trình:

cardView.setCardBackgroundColor(Color.RED); 
+0

Cảm ơn câu trả lời của bạn, tôi đã giải quyết nó. Tôi đã thay đổi màu sắc lập trình ở đâu đó mà tôi không thể nhận ra. – Ishaan

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