关于android UI的各种adapter

1 什么是RecyclerView

它是一个显示庞大数据集的容器。

2 RecyclerView的小伙伴

第一,LayoutManager

控制RecyclerView的items的排列方式;

布局管理器,通过设置不同的布局管理器,来控制这些Item的排列方式。

RecyclerView提供的布局管理器:

LinearLayoutManager 以垂直或水平滚动列表方式显示项目。
GridLayoutManager 在网格中显示项目。
StaggeredGridLayoutManager 在分散对齐网格中显示项目。

mRecyclerView.setLayoutManager(new LinearLayoutManager(this));

第二,适配器

RecyclerView.Adapter

给recycleView提供数据的类,使用方法如下

mRecyclerView.setAdapter(new NormalRecyclerViewAdapter(this));

可以看到数据适配器与BaseAdapter比较发生了相当大的变化,主要有3个方法:

getItemCount() 获取总的条目数
onCreateViewHolder() 创建ViewHolder
onBindViewHolder() 将数据绑定至ViewHolder

第三,控制item的间隔

RecyclerView.ItemDecoration

第四,控制item增删的动画

RecyclerView.ItemAnimator

3 RecyclerView.OnScrollListener

该listener有两个回调方法供使用

onScrollStateChanged()和onScrolled()

3.1 onScrollStateChanged(RecyclerView recyclerView, int newState)方法

recyclerView,当前滚动的view。

newState有三种:

第一,静止没有滚动

第二,被拽着滚动

第三,自动滚动

3.2 onScrolled(RecyclerView recyclerView, int dx, int dy)方法 

recyclerView,当前滚动的view

dx,水平滚动的距离,dy,竖直滚动的距离

dx>0,手指向左, dx<0,手指向右

dy>0, 手指向上,dy<0,手指向下

猜你喜欢

转载自www.cnblogs.com/hustdc/p/11437422.html