我正在从https://jsonplaceholder.typicode.com/photos获取json数据,并希望将此数据拆分为页面,以便可以在我的应用程序中实现Android Paging Library。有谁知道我怎么能做到这一点?
答案 0 :(得分:0)
第1页(返回ID为1到10的照片): https://jsonplaceholder.typicode.com/photos?_start=0&_limit=10
第2页(返回ID为11到20的照片) https://jsonplaceholder.typicode.com/photos?_start=10&_limit=10
答案 1 :(得分:0)
对于分页,您将使用android jetpack https://developer.android.com/topic/libraries/architecture/paging
另一种方法
从api中获取特定数量的数据,然后添加到recyleview中,然后再次加载特定数据后执行以下操作,您将调用其他剩余的特定数据作为计算加载数据的计数器。
参考文献https://www.youtube.com/watch?v=2-vZ1g_G1Zo
boolean isScrolling=false;
rView.setAdapter(adapter);
rView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int
newState) {
super.onScrollStateChanged(recyclerView, newState);
if(newState == AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL)
{
isScrolling=true;
}
}
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
currentitems=layoutManager.getChildCount();
totaliitems=layoutManager.getItemCount();
scrolloutitems=layoutManager.findFirstVisibleItemPosition();
if(isScrolling && (currentitems + scrolloutitems == totaliitems))
{
isScrolling=false;
getAllItemList();
}
}
});
adapter.notifyDataSetChanged();
getAllItemList();