我想在Recycler View中实现以下功能
________________________
| item1
|
|
________________________
| Call to Rest API to fetch more Item
▼
________________________
| item1
| item2
|
________________________
| Call to Rest API to fetch more Item
▼
________________________
| item1
| item2
| item3
________________________
这是我的适配器设置
private void setupOpenPost() {
final LinearLayoutManager linearLayoutManager = new LinearLayoutManager(ctx);
linearLayoutManager.setReverseLayout(true);
rvComments.setLayoutManager(linearLayoutManager);
rvComments.setHasFixedSize(true);
commentsAdapter = new CommentsAdapter(ctx,photoItem);
commentsAdapter.fetchFirstItems();
rvComments.setAdapter(commentsAdapter);
rvComments.setOverScrollMode(View.OVER_SCROLL_NEVER);
}
我想一次获取一个项目以填满完整的可见Recycler视图。
最初,fetchFirstItems()
用于填充第一个项目。我有一个类似的函数fetchmoreItems()
来获取更多。
问题:如何实现这一目标?实际发起对trigger code
的调用并添加项目的fetchmoreItems()
是什么?
答案 0 :(得分:0)
如何实现这一目标?实际上触发器代码是什么 启动对fetchmoreItems()的调用?
您可以使用fetchmoreItems()
方法拨打onBindViewHolder()
,当您到达数据集中的最后一项时,请点击:
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
if(position == mYourDataSet.size()-1){ // its the last item
fetchmoreItems();
}
}
并添加项目?
mYourDataSet.add(newItem); // add the item to your dataset
mAdapter.notifyItemInserted(mYourDataSet.size()-1); // notify the adapter