CardView在RecyclerView中无法正确显示

时间:2019-05-15 06:38:54

标签: android xml android-layout

我想在回收者视图中显示名片视图。我已经在gradle文件中编译了卡片视图库,但是问题是卡片视图没有显示没有高程和阴影,而是显示了简单的纯视图。

这是我的gradle依赖项:

implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0   

Row_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_marginTop="10dp">

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardElevation="3dp"
    app:cardBackgroundColor="#fff"
    app:cardCornerRadius="3dp"
    app:contentPadding="3dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <ImageView
            android:layout_width="150dp"
            android:layout_height="140dp"
            android:id="@+id/userPostBook"/>

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="15dp"
            android:layout_marginTop="20dp"
            android:id="@+id/userBookName"
            android:textSize="18sp"/>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:paddingBottom="5dp"
            android:paddingRight="5dp"
            android:text="DELETE"
            android:id="@+id/delete"
            android:textColor="#fff"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:background="@drawable/delete_button"
            tools:ignore="HardcodedText"
            android:layout_alignParentEnd="true" />

        </RelativeLayout>

    </LinearLayout>

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

这是它在recyclerview中的显示方式:

enter image description here

如您在上面的屏幕截图中所见,recyclerview中没有显示卡视图。 有人请让我知道如何解决这个问题。任何帮助将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:1)

您需要在app:cardUseCompatPadding="true"

中使用 CardView
<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardElevation="3dp"
    app:cardUseCompatPadding="true"
    app:cardBackgroundColor="#fff"
    app:cardCornerRadius="3dp"
    app:contentPadding="3dp">