Ich möchte einen transparenten Hintergrund für CardView erstellen. Ich kenne backgroundColor, aber ich habe ein Bild in meinem Layout.
Weißt du wie es geht? Oder etwas, das als Kartenansicht funktioniert, aber ich werde einen transparenten Hintergrund setzen?
Grüße
android
background
android-cardview
mac229
quelle
quelle
android:background="@android:color/transparent"
Antworten:
Richten Sie Ihre CardView so ein, dass das
cardBackgroundColor
Attribut zum Entfernen von Farbe und dascardElevation
Attribut zum Entfernen des Schlagschattens verwendet wird. Zum Beispiel:<android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/myCardView" android:layout_width="match_parent" android:layout_height="match_parent" card_view:cardBackgroundColor="@android:color/transparent" card_view:cardElevation="0dp">
Eine vollständige Liste der unterstützten Attribute finden Sie hier: https://developer.android.com/reference/android/support/v7/widget/CardView.html
Wenn Sie eine ältere API verwenden, müssen Sie
CardView
stattdessen diese beiden Funktionen aufrufen :myCardView.setCardBackgroundColor(Color.TRANSPARENT); myCardView.setCardElevation(0);
quelle
setCardElevation()
undsetCardBackgroundColor()
von Ihrem Code auf SieCardView
Siehe meine Bearbeitung.@null
aber es hat nicht funktioniert, eine Idee?Einfache 2 Schritte, um Android
CardView
transparent zu machen .Stellen Sie ein
app:cardBackgroundColor="@android:color/transparent"
. Dies ist einCardView
Attribut zum Festlegen des Hintergrunds.Stellen Sie ein
app:cardElevation="0dp"
, um den Schatten zu entfernen.Hier ist zum Beispiel ein kleiner XML-Code zum Erstellen von transparentem Code
CardView
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_width="match_parent" android:layout_height="match_parent" app:cardBackgroundColor="@android:color/transparent" app:cardElevation="0dp" />
quelle
In meinem Fall habe ich das Attribut verwendet
android:backgroundTint="@color/some_color"
, es wird nur ab API-Level 21 und höher verwendet . Undcolor #50000000
zum Beispiel.<android.support.v7.widget.CardView android:layout_width="wrap_content" android:layout_height="wrap_content" card_view:cardCornerRadius="3dp" app:cardElevation="0dp" android:backgroundTint="@color/negro_label" >
quelle
Dies sollte unter API 17 funktionieren
cardView.setBackgroundColor(ContextCompat.getColor(getContext(), android.R.color.transparent));
quelle
verwenden
app:cardBackgroundColor="@android:color/transparent"
<android.support.v7.widget.CardView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginBottom="20dp" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" android:layout_marginTop="10dp" app:cardCornerRadius="16dp" app:cardElevation="16dp" app:cardBackgroundColor="@android:color/transparent" > <--inside cardlayout--> </android.support.v7.widget.CardView>
quelle