File tree Expand file tree Collapse file tree
app/src/main/java/com/ztiany/loadmore
library/src/main/java/com/ztiany/loadmore/adapter Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1515import com .ztiany .loadmore .adapter .WrapperAdapter ;
1616
1717import java .util .ArrayList ;
18- import java .util .Arrays ;
1918import java .util .List ;
2019
2120import androidx .annotation .NonNull ;
@@ -149,7 +148,7 @@ public void getItemOffsets(
149148 }
150149 });
151150
152- mWrapperAdapter = WrapperAdapter .wrap (mRecyclerAdapter );
151+ mWrapperAdapter = WrapperAdapter .wrap (mRecyclerAdapter , true );
153152 mRecyclerView .setAdapter (mWrapperAdapter );
154153
155154 Bundle arguments = getArguments ();
@@ -178,6 +177,7 @@ public void run() {
178177 for (int i = 0 ; i < 20 ; i ++) {
179178 mData .add ("我是Item " + i );
180179 }
180+ count = 20 ;
181181 mRecyclerAdapter .notifyDataSetChanged ();
182182 mRefreshLayout .setRefreshing (false );
183183 mWrapperAdapter .loadCompleted (mHasMore );
@@ -213,33 +213,15 @@ public void run() {
213213 return ;
214214 }
215215
216- mRecyclerAdapter .addAll (Arrays .asList (
217- "新来的Item" + count ++,
218- "新来的Item" + count ++,
219- "新来的Item" + count ++,
220- "新来的Item" + count ++,
221- "新来的Item" + count ++,
222- "新来的Item" + count ++,
223- "新来的Item" + count ++,
224- "新来的Item" + count ++,
225- "新来的Item" + count ++,
226- "新来的Item" + count ++,
227- "新来的Item" + count ++,
228- "新来的Item" + count ++,
229- "新来的Item" + count ++,
230- "新来的Item" + count ++,
231- "新来的Item" + count ++,
232- "新来的Item" + count ++,
233- "新来的Item" + count ++,
234- "新来的Item" + count ++,
235- "新来的Item" + count ++,
236- "新来的Item" + count ++,
237- "新来的Item" + count ++));
238-
216+ List <String > newData = new ArrayList <>();
217+ for (int i = 0 ; i < 20 ; i ++) {
218+ newData .add ("新来的Item" + count ++);
219+ }
220+ mRecyclerAdapter .addAll (newData );
239221 mWrapperAdapter .loadCompleted (mAddNewHasMore );
240-
241222 }
242223 }, 100 );
224+
243225 }
244226 });
245227
Original file line number Diff line number Diff line change @@ -21,4 +21,6 @@ public interface ILoadMore {
2121 */
2222 void setVisibilityWhenNoMore (int visibility );
2323
24+ void setMinLoadMoreInterval (long minLoadMoreInterval );
25+
2426}
Original file line number Diff line number Diff line change @@ -25,6 +25,9 @@ class LoadMoreImpl implements ILoadMore {
2525 private int mCurrentStatus = STATUS_NONE ;
2626
2727 private long mPreviousTimeCallingLoadMore ;
28+
29+ private long mMixLoadMoreInterval = 0 ;
30+
2831 private final boolean timeLimited ;
2932
3033 @ LoadMode private int mLoadMode = LoadMode .AUTO_LOAD ;
@@ -58,7 +61,7 @@ private boolean checkIfNeedCallLoadMoreWhenAutoMode(int direction) {
5861 return false ;
5962 }
6063 if (timeLimited ) {
61- return System .currentTimeMillis () - mPreviousTimeCallingLoadMore >= 250 ;
64+ return System .currentTimeMillis () - mPreviousTimeCallingLoadMore >= mMixLoadMoreInterval ;
6265 } else {
6366 return true ;
6467 }
@@ -115,6 +118,11 @@ private void initClickLoadMoreViewStatus() {
115118 }
116119 }
117120
121+ @ Override
122+ public void setMinLoadMoreInterval (long mixLoadMoreInterval ) {
123+ mMixLoadMoreInterval = mixLoadMoreInterval ;
124+ }
125+
118126 private void initLoadMoreView (ViewGroup parent ) {
119127 if (mLoadMoreViewFactory == null ) {
120128 mLoadMoreView = new LoadMoreView (parent .getContext ());
Original file line number Diff line number Diff line change @@ -248,4 +248,9 @@ public void setVisibilityWhenNoMore(int visibility) {
248248 mLoadMoreManager .setVisibilityWhenNoMore (visibility );
249249 }
250250
251+ @ Override
252+ public void setMinLoadMoreInterval (long minLoadMoreInterval ) {
253+ mLoadMoreManager .setMinLoadMoreInterval (minLoadMoreInterval );
254+ }
255+
251256}
You can’t perform that action at this time.
0 commit comments