我在Android开发方面没有太多经验,想在我的应用程序中实现RecyclerView。 Android Studio的版本没有Android L,也没有安装选项。每次它都说android.support.widget.v7.RecyclerView
没有使用,并禁用了从导入包中。我在layout文件和Gradle.build中都给出了参考,但我的问题仍然存在,请有人帮忙吗?
我在Android开发方面没有太多经验,想在我的应用程序中实现RecyclerView。 Android Studio的版本没有Android L,也没有安装选项。每次它都说android.support.widget.v7.RecyclerView
没有使用,并禁用了从导入包中。我在layout文件和Gradle.build中都给出了参考,但我的问题仍然存在,请有人帮忙吗?
请跟随以下内容
http://icetea09.com/blog/2014/12/19/android-cardview-and-recyclerview-in-material-design/
将以下内容添加到dependencies中:
compile 'com.android.support:cardview-v7:22.2.0'
compile 'com.android.support:recyclerview-v7:22.2.0'
并更新模块的build.gradle
中的gradle
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>
如何在Android中使用Recycler View的解释
下面是使用Recycler View的步骤及说明:
打开app gradle文件
添加Recycler View的依赖
compile 'com.android.support:recyclerview-v7:25.3.1'
(在创建项目时,请使用最新版本的依赖),并同步项目。
在你的activity/fragment文件中使用Recycler View - Recycler View可在v7小部件支持文件中找到
进入你的Java文件,获取对这个Recycler View的引用
创建一个新的布局(xml)文件,以创建你想要填充到Recycler View中的自定义视图,并将其命名为custom_row.xml
创建一个Java类,将其命名为RecyclerviewHolder,并扩展它与RecyclerView.ViewHolder,并创建一个超级构造函数,然后访问你自定义行XML文件中的所有视图
现在创建另一个名为RecylerAdapter或MyRecyclerAdapter的Java类,并将其扩展为RecyclerView.Adapter,并在此处传递你的RecyclerviewHolder类,如:
class RecyclerAdapter extends RecyclerView.Adapter<RecyclerviewHolder>
然后创建一个构造函数,只需按alt+enter键即可为你生成三个方法,即你只需要覆盖RecyclerView.Adapter类的这三个方法
这三种方法是:
{ onCreateViewHolder,OnBindViewHolder,getCount }
OnCreateViewHolder - 在此方法中,您将传递您的自定义视图布局以使用LayoutInflater进行填充,并在此方法中仅需要创建RecyclerviewHolder类的对象,然后将此视图对象返回到该方法中。
OnBindViewHolder - 您可以在此处对您的视图执行任何操作,只需在所有视图名称前缀中加入holder.并使用它们执行任何操作或进行任何事件处理
getCount - 在这里,我们将返回计数值,即您想要填充自定义视图的次数
现在,进入你的Activity或Fragment文件,并创建一个RecyclerAdapter类的对象,并将此适配器设置在你的Recycler View上。
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.
为前缀。
RecyclerView使用Adapter将List项传递给它。该适配器返回您选择传递到RecyclerView的List Item类型的对象。在本文中,您将学习如何在应用程序中实现RecyclerView以及如何通过CardView对象滚动它们。
步骤: 1)构建一个CardView 2)构建数据模型以填充您的CardView 3)构建RecyclerView 4)构建连接数据到RecyclerView的适配器 5)将适配器设置为您的RecyclerView
本教程将帮助您采取这些步骤,在Android应用程序中使用RecyclerView和CardView:
你可以在不使用CardView的情况下使用Recyclerview。但是CardView提供了更多的功能来设计列表行。
implementation 'com.android.support:design:29+'
根据您在build.grade(:app)
文件中设置的targetSdkVersion
版本进行更改,对于我的情况,它是29