滚动后,我的RecycleView卡每个都填满一个屏幕

时间:2016-05-27 19:28:56

标签: android layout android-recyclerview

我有一个带有卡作为适配器的RecycleView。

MainActivity中的RecyvleView:

<android.support.v7.widget.RecyclerView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/recvyleview"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

使用卡列出项目布局:

<?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:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <TextView
            android:text="TextView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/textView2"
            android:textAppearance="@style/TextAppearance.AppCompat.Medium" />
    </android.support.v7.widget.CardView>
</LinearLayout>

现在出现问题:

当我启动应用程序时,我会看到所有元素: enter image description here

但是当我开始滚动时,每张卡开始填充一个屏幕: enter image description here

这里有什么问题?

1 个答案:

答案 0 :(得分:2)

列表项父布局高度和cardview高度更改为wrap_content而不是match_parent。像这样的东西

<?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:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <android.support.v7.widget.CardView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:text="TextView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/textView2"
            android:textAppearance="@style/TextAppearance.AppCompat.Medium" />
    </android.support.v7.widget.CardView>
</LinearLayout>