强大的滚动控件RecyclerView

RecyclerView的基本用法:

RecyclerView属于新增的控件,为了使RecyclerView能够在所有的Android版本中都可以使用,我们需要将RecyclerView定义在support库里面。

在布局中加入RecyclerView控件的步骤很简单:我们首先需要定义一个ID,然后将宽度和高度都设置成match-parent,这样可以使RecyclerView控件占据布局的整个空间。不过由于RecyclerView不是内置在系统SDk中的,所以我们需要把完整的包路径写出来。

接下来我们需要为RecyclerView准备一个适配器,新建一个类,并且让这个类继承RecyclerView.Adapter,然后将泛型指定为“新建类名.ViewHolder”的形式。其中ViewHolder是我们在新建类里面定义的一个内部类。这个内部类ViewHolder要继承RecyclerView.Holder。然后我们要在ViewHolder的构造函数中传入一个参数View,并且这个参数通常是RecyclerView子项最外层布局,接着我们就可以通过findViewById()f方法获取到布局中的ImageViewTextView的实例了。

我们在设置一个新建类的构造函数,主要用于把要展示的数据源传进来,并赋值给一个全局变量。由于该类又继承RecyclerView.Adapter,我们需要重写onCreateViewHolder()onBindViewHolder()getItemCount()方法。onCreateHolder()方法是用于创建ViewHolder实例的,在这个方法里面,我们将RecyclerView子项布局加载进来,接着再创建一个ViewHolder实例,把加载出来的布局传入到构造函数中,最后返回ViewHolder的实例。 onBindViewHolder()方法是用于对RecyclerView子项的数据进行赋值的,会在每个子项被滚动到屏幕中的时候执行,我们通过position参数获得当前项的实例,然后再将数据设置到ViewHolderImageViewTextView当中。getItemCount()方法用于告诉RecyclerView一空有多少项,直接返回数据源的长度就行。

适配器准备好以后,我们需要修改主活动里面的代码。首先,我们需要一个initFruits()方法来初始化所有数据。接着,在onCreat()方法里面获取RecyclerView的实例,再创建一个LinearLayoutManager对象,并且将它添加到RecyclerView当中去,最后调用RecyclerViewsetAdapter()方法来完成适配器设置,实现Recycler与数据的关联。

发布了37 篇原创文章 · 获赞 10 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/OneLinee/article/details/77841815