光环助手V3.2其它优化汇总

This commit is contained in:
kehaoyuan
2018-04-10 11:34:39 +08:00
parent e0c9d43f02
commit c736068d0e
42 changed files with 286 additions and 419 deletions

View File

@ -52,13 +52,11 @@ public class ToolBoxRvAdapter extends BaseRecyclerAdapter {
private String mSearchKey;
private String mToken;
private boolean mLoadConcernDataOver;
// private boolean mLoadConcernDataOver;
private boolean mIsSearch;
private boolean mIsLoading;
private boolean mIsOver;
private boolean mIsNetworkError;
private int mConcernPage;
private int mPage;
public ToolBoxRvAdapter(Context context, OnRequestCallBackListener listener, OnSearchCallBackListener searchListener,
@ -66,35 +64,22 @@ public class ToolBoxRvAdapter extends BaseRecyclerAdapter {
super(context);
this.mIsSearch = isSearch;
this.mSearchKey = key;
mConcernPage = 1;
mPage = 1;
mToken = UserManager.getInstance().getToken();
mSearchListener = searchListener;
mCallBackListener = listener;
mEntityList = new ArrayList<>();
loadData(mIsSearch);
loadData();
}
public void loadData(boolean isSearch) {
int normalPage;
public void loadData() {
if (mIsLoading) {
return;
}
mIsLoading = true;
if (!isSearch && mLoadConcernDataOver) {
normalPage = mPage;
} else {
normalPage = mConcernPage;
}
Observable<List<ToolBoxEntity>> api;
if (!TextUtils.isEmpty(mToken) && !mLoadConcernDataOver) {
api = RetrofitManager.getInstance(mContext).getApi().getConcernToolKitData(UserManager.getInstance().getUserId(), normalPage, mSearchKey);
} else {
api = RetrofitManager.getInstance(mContext).getApi().getToolKitData(normalPage, mSearchKey);
}
api = RetrofitManager.getInstance(mContext).getApi().getToolKitData(mPage, mSearchKey);
api
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
@ -102,32 +87,22 @@ public class ToolBoxRvAdapter extends BaseRecyclerAdapter {
@Override
public void onResponse(List<ToolBoxEntity> response) {
super.onResponse(response);
if (!mLoadConcernDataOver && response.size() < 20) {
if (response.size() > 0) {
mEntityList.addAll(response);
mLoadConcernDataOver = true;
mIsLoading = false;
mConcernPage++;
loadData(mIsSearch);
} else {
if (response.size() >= 0) {
removeDuplicateData(mEntityList, response);
if (response.size() > 0) {
mEntityList.addAll(response);
}
mCallBackListener.loadDone();
}
mCallBackListener.loadDone();
if (response.size() < 20) {
mIsOver = true;
}
if (response.size() < 20) {
mIsOver = true;
}
notifyDataSetChanged();
}
mPage++;
mIsLoading = false;
notifyDataSetChanged();
if (mEntityList.size() == 0) {
mCallBackListener.loadEmpty();
}
mPage++;
mIsLoading = false;
if (mEntityList.size() == 0) {
mCallBackListener.loadEmpty();
}
}
@ -295,7 +270,7 @@ public class ToolBoxRvAdapter extends BaseRecyclerAdapter {
viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
loadData(mIsSearch);
loadData();
}
});
} else if (mIsOver) {