Android recycleView的研究和探讨
RecyclerViewLibrary
A RecyclerView libirary ,has some support, like headerAdapter/TreeAdapter,and PulltoRefreen/Drag
一个RecyclerView扩展库,当中主要包括
1:针对RecyclerView数据适配器的封装
2:RecyclerView上拉刷新,下拉载入
3:RecyclerView拖动
RecyclerView 自己定义数据适配器
- HeaderAdapter:一个支持动态加入/移除头和尾的Adapter,不推荐单独使用.PullToRefreenceRecyclerView内己封装,可如ListView一般操作,且更灵活
- ExpandAdapter:Recyclerview实现为如ExpandListView功能的数据适配器.
- TreeAdapter:一个无限级的Adapter树
- DynamicAdapter:全然动态化的Adapter,支持往任一位置插入自己定义条目.
RecyclerView 拖动(Drag)
RecyclerView 上拉刷新下拉载入
部分实现介绍
RecyclerView#setAdapter mAdapter==HeaderViewAdapter:RecyclerView内部维护Adapter,所以实现不影响使用者Adapter的情况下,类ListView般使用,实现like:ListView的HeaderListAdapter
@Override
public void setAdapter(Adapter adapter) {
mAdapter.setAdapter(adapter);
super.setAdapter(mAdapter);
adapter.registerAdapterDataObserver(new HeaderAdapterDataObserve(mAdapter));
}
#### HeaderAdapter:type定义 type_header:为-1往下递减
type_footer:为12以上递加
实现动态无限加入与删除
private final int TYPE_HEADER = -1;//从-1起始開始减
private final int TYPE_NORMAL = 0;//默认从0開始
private final int TYPE_NORMAL_ITEM_COUNT = 12;//任意取的值,确保装饰Adapter对象不会超过此界就可以
private final int TYPE_FOOTER = TYPE_NORMAL_ITEM_COUNT + 1;
还有更难实现的DynamicAdapter等
github地址:https://github.com/momodae/RecyclerViewLibrary
假设你认为此文对您有所帮助。欢迎入群 QQ交流群 :232203809 微信公众号:终端研发部
(欢迎关注学习和交流)