Quiero hacer un fondo transparente en CardView. Sé backgroundColor pero tengo una imagen en mi diseño.
¿Sabes cómo hacerlo? ¿O algo que funcione como cardview pero estableceré un fondo transparente?
Saludos
android
background
android-cardview
mac229
fuente
fuente
android:background="@android:color/transparent"
Respuestas:
Configure su CardView para usar el
cardBackgroundColor
atributo para eliminar el color y elcardElevation
atributo para eliminar la sombra paralela . Por ejemplo:<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">
Para obtener una lista completa de los atributos admitidos, consulte aquí: https://developer.android.com/reference/android/support/v7/widget/CardView.html
Si está utilizando una API anterior, deberá llamar a estas dos funciones en su
CardView
lugar:myCardView.setCardBackgroundColor(Color.TRANSPARENT); myCardView.setCardElevation(0);
fuente
setCardElevation()
ysetCardBackgroundColor()
desde tu código enCardView
Ver mi edición.@null
pero no funcionó, ¿alguna idea?Sencillos 2 pasos para hacer que Android sea
CardView
transparente.Establecer
app:cardBackgroundColor="@android:color/transparent"
. Este es unCardView
atributo para establecer el fondo.Establecer
app:cardElevation="0dp"
para eliminar la sombra.Por ejemplo, aquí hay un pequeño código XML para crear transparencias.
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" />
fuente
En mi caso, utilicé el atributo
android:backgroundTint="@color/some_color"
, solo se usa en el nivel de API 21 y superior . Ycolor #50000000
por ejemplo.<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" >
fuente
Esto debería funcionar en API 17
cardView.setBackgroundColor(ContextCompat.getColor(getContext(), android.R.color.transparent));
fuente
utilizar
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>
fuente