11# Android-PullToRefreshRecyclerView
22
3+ 这是一个可以下拉刷新的RecyclerView,并且支持方便添加Header、滑动到底部自动加载更多以及其他ListView的功能。
4+ 它可以帮助你在RecyclerView里实现ListView拥有但RecyclerView没有的功能,并且不影响和增加你原有的RecyclerView和Adapter的逻辑。
5+
36![ Screenshot] ( https://github.com/HomHomLin/Android-PullToRefreshRecyclerView/blob/master/screenshot.gif )
47
5- 这是一个可以下拉刷新的RecyclerView,并且支持方便添加Header、滑动到底部自动加载更多以及其他ListView的功能,可以帮助你在RecyclerView里实现ListView拥有但RecyclerView没有的功能。
68
7- ** Latest version:v1.0.0 **
9+ ** Latest version:v1.0.1 **
810
911## Feature
1012 * 基于原生RecyclerView的封装
@@ -26,7 +28,7 @@ There has a Sample in project:[Sample](https://github.com/HomHomLin/Android-Pull
2628
2729** Gradle dependency:**
2830``` groovy
29- compile 'homhomlin.lib:ptrrv-library:1.0.0 '
31+ compile 'homhomlin.lib:ptrrv-library:1.0.1 '
3032```
3133
3234or
3638<dependency >
3739 <groupId >homhomlin.lib</groupId >
3840 <artifactId >ptrrv-library</artifactId >
39- <version >1.0.0 </version >
41+ <version >1.0.1 </version >
4042</dependency >
4143```
4244
4345##Usage
4446
4547PullToRefreshRecyclerView is easy to use just like ListView and RecyclerView.
4648
49+ See Sample for detail.
50+
4751** First: Config in xml**
4852``` xml
4953<?xml version =" 1.0" encoding =" utf-8" ?>
@@ -66,49 +70,49 @@ PullToRefreshRecyclerView mPtrrv = (PullToRefreshRecyclerView) this.findViewById
6670
6771** Third: Config it in java code**
6872``` java
69- // set true to open swipe(pull to refresh, default is true)
70- mPtrrv. setSwipeEnable(true );
71-
72- // set the layoutManager which to use
73- mPtrrv. setLayoutManager(new LinearLayoutManager (this ));
74-
75- // set PagingableListener
76- mPtrrv. setPagingableListener(new PullToRefreshRecyclerView .PagingableListener () {
77- @Override
78- public void onLoadMoreItems () {
79- // do loadmore here
80- }
81- });
82-
83- // set OnRefreshListener
84- mPtrrv. setOnRefreshListener(new SwipeRefreshLayout .OnRefreshListener () {
85- @Override
86- public void onRefresh () {
87- // do refresh here
88- }
89- });
90-
91- // add item divider to recyclerView
92- mPtrrv. getRecyclerView(). addItemDecoration(new DividerItemDecoration (this ,
93- DividerItemDecoration . VERTICAL_LIST ));
94-
95- // add headerView
96- mPtrrv. addHeaderView(View . inflate(this , R . layout. header, null ));
97-
98- // set EmptyVIEW
99- mPtrrv. setEmptyView(View . inflat(this ,R . layout. empty_view, null ));
100-
101- // set loadmore String
102- mPtrrv. setLoadmoreString(" loading" );
103-
104- // set loadmore enable, onFinishLoading(can load more? , select before item)
105- mPtrrv. onFinishLoading(true , false );
73+ // set true to open swipe(pull to refresh, default is true)
74+ mPtrrv. setSwipeEnable(true );
75+
76+ // set the layoutManager which to use
77+ mPtrrv. setLayoutManager(new LinearLayoutManager (this ));
78+
79+ // set PagingableListener
80+ mPtrrv. setPagingableListener(new PullToRefreshRecyclerView .PagingableListener () {
81+ @Override
82+ public void onLoadMoreItems () {
83+ // do loadmore here
84+ }
85+ });
86+
87+ // set OnRefreshListener
88+ mPtrrv. setOnRefreshListener(new SwipeRefreshLayout .OnRefreshListener () {
89+ @Override
90+ public void onRefresh () {
91+ // do refresh here
92+ }
93+ });
94+
95+ // add item divider to recyclerView
96+ mPtrrv. getRecyclerView(). addItemDecoration(new DividerItemDecoration (this ,
97+ DividerItemDecoration . VERTICAL_LIST ));
98+
99+ // add headerView
100+ mPtrrv. addHeaderView(View . inflate(this , R . layout. header, null ));
101+
102+ // set EmptyVIEW
103+ mPtrrv. setEmptyView(View . inflat(this ,R . layout. empty_view, null ));
104+
105+ // set loadmore String
106+ mPtrrv. setLoadmoreString(" loading" );
107+
108+ // set loadmore enable, onFinishLoading(can load more? , select before item)
109+ mPtrrv. onFinishLoading(true , false );
106110```
107111
108112** Finally: Set the adapter which extends RecyclerView.Adpater**
109113``` java
110- PtrrvAdapter mAdapter = new PtrrvAdapter (this );
111- mPtrrv. setAdapter(mAdapter);
114+ PtrrvAdapter mAdapter = new PtrrvAdapter (this );
115+ mPtrrv. setAdapter(mAdapter);
112116```
113117
114118##License
0 commit comments