我还没有找到正确的示例,说明如何onResponse在向下滚动 RecyclerView 时使应用程序从 Retrofit 加载更多项目。
这是我如何加载我的拳头 20 项目:
List<ModelPartners> model = new ArrayList<>();
Call<ResponsePartners> call = ApiClient.getRetrofit().getPartnerList(params);
call.enqueue(this);
Run Code Online (Sandbox Code Playgroud)
我的 RecyclerView
PartnersAdapter adapter = new PartnersAdapter(getContext(), recyclerView, model);
recyclerView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
这是我的改造onResponse:
@Override
public void onResponse(Call<ResponsePartners> call, Response<ResponsePartners> response) {
if (getActivity() != null && response.isSuccessful()) {
List<ModelPartners> body = response.body().getData();
//Rest of the code to add body to my Adapter and notifyDataSetChanged
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,每次我添加方法以在滚动时加载更多项目时,都会onResponse一直加载到最后一页。即使我已将 set 设置loading为false。
有人可以展示如何在 Retrofit 中正确使用分页吗?你在 Retrofit …