RecyclerView的使用
第一次写博客,而且还是第一次用MarkDown,排版可能很渣
引用一段从CSDN里原话:
那么有了ListView、GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,提供了一种插拔式的体验,高度的解耦,异常的灵活,通过设置它提供的不同LayoutManager,ItemDecoration , ItemAnimator实现令人瞠目的效果。
*使用它需要在Gradle的组件配置文件里添加
compile 'com.android.support:recycleview-v7:25.3.1'
RecyclerView使用时的三个主要对象:
-RecyclerView
-RecyclerView.Adapter
-RecyclerView.ViewHolder
RecyclerView用于回收和定位Item,Adapter用于将数据和视图绑定,ViewHolder用于容纳Item的View。
我的理解是,RecyclerView是一个管理很多个View的”大容器“,而ViewHolder就是这个“大容器”的一个个“小隔间”,用来容纳“View”(注意:ViewHolder的数量只有屏幕上显示的View的数量+2);Adapter存储有View的数据,它就像一个“花名册”记录着所有在RecyclerView中的View的数据。
1. RecyclerView使用方法
- 新建RecyclerView对象
RecycerView listview = (RecycerView)findViewById(R.id.recycerview);
- 为RecyclerView对象设置LayoutManager
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
listview.setLayoutManager(layoutManager);
- 为RecyclerView对象设置adapter
MyAdapter adapter = new MyAdapter(list);
listview.setAdapter(adapter);
- RecycerView的另外的一些方法
mRecyclerView = findView(R.id.id_recyclerview);
//设置布局管理器
mRecyclerView.setLayoutManager(layout);
//设置adapter
mRecyclerView.setAdapter(adapter)
//设置Item增加、移除动画
mRecyclerView