如何使用RecyclerView和CardView

时间:2015-07-13 06:55:19

标签: android android-studio android-recyclerview android-cardview

我在Android开发方面没有太多经验,并尝试在我的应用程序中实现RecyclerView。 android studio的版本没有Android L,也没有安装选项。每次它都表示未使用android.support.widget.v7.RecyclerView并从导入包中禁用它。我也在Gradle.build的布局文件中给出了参考,但是我的问题仍然有人帮忙吗?

6 个答案:

答案 0 :(得分:8)

按照这一行

  • Material Design中的CardView和RecyclerView

http://icetea09.com/blog/2014/12/19/android-cardview-and-recyclerview-in-material-design/

将这些添加到依赖关系

    compile 'com.android.support:cardview-v7:22.2.0'
    compile 'com.android.support:recyclerview-v7:22.2.0'

并更新girdle

  • 每个人的例子:

<强> CardView

<android.support.v7.widget.CardView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    card_view:contentPadding="16dp"
    card_view:cardElevation="2dp"
    card_view:cardCornerRadius="5dp">

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            style="@style/Base.TextAppearance.AppCompat.Headline"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Title" />

        <TextView
            style="@style/Base.TextAppearance.AppCompat.Body1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Content here" />

    </LinearLayout>

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

<强> RecyclerView:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/recycler_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</LinearLayout>

答案 1 :(得分:2)

关于如何在ANDROID中使用回收视图的说明

以下是解释如何使用Recycler View

的步骤
  • 转到app gradle文件

  • 添加Recycler View的依赖项 compile 'com.android.support:recyclerview-v7:25.3.1'(在创建项目时使用最新的一个依赖项),并同步项目

  • 您的活动/片段文件中的
  • 使用带有此标记的Recycler View - v7小部件支持文件中提供了recyler视图

  • 转到相应的Java文件并获取对此回收站视图的引用

  • 创建一个新的布局(xml)文件,以便在recyler视图中创建要隐藏的自定义视图,并将其命名为 custom_row.xml

  • 创建一个Java类并将其命名为 RecyclerviewHolder 并使用RecyclerView.ViewHolder扩展它并创建一个超级构造函数,然后访问custom-row.xml文件中的所有视图

  • 现在创建另一个名为 RecylerAdapter MyRecyclerAdapter 的Java类,并通过 RecyclerView.Adapter 扩展它并传递 RecyclerviewHolder 类就像

    一样

    <强> class RecyclerAdapter extends RecyclerView.Adapter<RecyclerviewHolder>

  • 然后创建一个构造函数并按下alt +输入它将为您生成三种方法,即您只需要覆盖 RecyclerView.Adapter类

    这三种方法

这三种方法是: -

{onCreateViewHolder,OnBindViewHolder,getCount}

  • OnCreateViewHolder - 您将传递自定义视图布局以使用LayoutInflater对其进行渗透的方法,在此方法中,您只需要创建 RecyclerviewHolder 的对象之后,您将在此方法中返回此视图对象。

  • OnBindViewHolder - 您可以在视图上执行任何操作,只需前缀持有者。对您的所有视图命名,并使用它们执行任何操作或任何事件处理

  • getCount - 这里我们将返回计算您想要多少时间来填充自定义视图的值

  • 现在转到您尊重的活动或片段文件并创建 RecyclerAdapter 类的一个对象,并在您的回收站视图上设置此适配器。

答案 2 :(得分:1)

根据documentation,你必须在gradle文件中添加特殊依赖项:

dependencies {
    ...
    compile 'com.android.support:appcompat-v7:27.0.1'
    compile 'com.android.support:cardview-v7:27.0.1'
    compile 'com.android.support:recyclerview-v7:27.0.1'

}

要使用它,请始终使用android.support.v7.widget.

作为前缀

答案 3 :(得分:0)

RecyclerView使用适配器,它将List项目传递给它。适配器返回您选择传递给RecyclerView的List Item类型的对象。在这篇文章中,您将学习如何在应用程序中实现RecyclerView,以及如何传递CardView对象以滚动它们。

步骤: 1)构建CardView 2)构建数据模型以填充您的CardView 3)构建RecyclerView 4)构建一个将数据连接到RecyclerView的适配器 5)将适配器设置为RecyclerView

本教程将帮助您按照以下步骤在Android应用中使用RecyclerView和CardView:

https://knowledgecollisions.wordpress.com/2016/03/29/using-recyclerview-and-cardview-in-your-android-app/

答案 4 :(得分:0)

您可以使用 Recyclerview 而不使用 CardView 。但 CardView 可提供更多功能来设计列表行。

答案 5 :(得分:0)

implementation 'com.android.support:design:29+'

根据您在targetSdkVersion文件中的build.grade(:app)更改了版本,在我的情况下是29