J'ai vu ces CardViews
(je ne suis pas sûr qu'ils soient même CardViews
) avec des séparateurs utilisés dans beaucoup d'applications, donc je suppose qu'il existe un moyen facile de les créer . Je voulais demander comment cela se faisait-il exactement? sont-ils même CardViews
?
Je n'ai pas pu en savoir plus à leur sujet car je ne connaissais pas exactement le nom du View
, donc si quelqu'un pouvait me diriger vers un exemple avec du code, je lui en serais reconnaissant.
Exemple d'image:
Vous pouvez utiliser ce code, cela peut vous aider
<Android.support.v7.widget.CardView
Android:id="@+id/cardview"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_marginLeft="@dimen/margin_large"
Android:layout_marginRight="@dimen/margin_large"
Android:elevation="100dp"
card_view:cardBackgroundColor="@Android:color/white"
card_view:cardCornerRadius="8dp">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="50dp"
Android:gravity="center_vertical"
Android:paddingLeft="25dp">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Conversations" />
</LinearLayout>
<View
Android:layout_width="match_parent"
Android:layout_height="2dp"
Android:background="@Android:color/darker_gray" />
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical"
Android:paddingLeft="30dp"
Android:paddingTop="20dp"
Android:paddingBottom="10dp">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="game" />
...
</LinearLayout>
</LinearLayout>
</Android.support.v7.widget.CardView>
La capture d'écran ci-contre montre un CardView normal avec des vues comme séparateur entre les deux. Il n'y a pas de DividerView ou quelque chose de similaire si vous recherchez quelque chose comme ça. Utilisez simplement un View
simple avec une hauteur et un arrière-plan.
J'ai quelque chose de similaire dans une de mes bibliothèques. J'utilise ceci pour créer le diviseur:
<View
Android:layout_width="match_parent"
Android:layout_height="1dp"
Android:background="@color/stroke"/>
card_library.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical"
Android:paddingBottom="8dp">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_marginLeft="8dp"
Android:layout_marginRight="8dp"
Android:gravity="center_vertical"
Android:orientation="horizontal">
<TextView
Android:id="@+id/libraryname"
style="@style/CardTitle"
Android:fontFamily="sans-serif-condensed"
Android:textStyle="normal"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:maxLines="1"/>
<TextView
Android:id="@+id/libraryversion"
style="@style/CardTitle"
Android:fontFamily="sans-serif-condensed"
Android:textStyle="normal"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="4dp"
Android:layout_marginTop="4dp"
Android:gravity="left|bottom"
Android:maxLines="1"
Android:textSize="12sp"/>
<TextView
Android:id="@+id/librarycreator"
style="@style/CardTitle"
Android:fontFamily="sans-serif-condensed"
Android:textStyle="normal"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_marginTop="2dp"
Android:gravity="right"
Android:maxLines="2"
Android:textSize="14sp"/>
</LinearLayout>
<View
Android:layout_width="match_parent"
Android:layout_height="1dp"
Android:layout_marginTop="4dp"
Android:background="@color/stroke"/>
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:gravity="center_vertical"
Android:padding="4dp">
<TextView
Android:id="@+id/description"
style="@style/CardText"
Android:fontFamily="sans-serif-condensed"
Android:textStyle="normal"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="8dp"
Android:maxLines="20">
</TextView>
</LinearLayout>
</LinearLayout>
Cela ressemblera alors à ceci:
Définir l'application: cardElevation = "0dp" puis utiliser une vue - voir ci-dessous
<Android.support.v7.widget.CardView
Android:id="@+id/cv"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
app:cardElevation="0dp"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
xmlns:app="http://schemas.Android.com/apk/res-auto">
<!-- Insert UI elements -->
<View
Android:layout_width="fill_parent"
Android:background="@Android:color/darker_gray"
Android:layout_height="2dp"/>
</Android.support.v7.widget.CardView>