CoreRecyclerAdapter.java 文件源码

java
阅读 37 收藏 0 点赞 0 评论 0

项目:MultiViewAdapter 作者:
@RestrictTo(RestrictTo.Scope.LIBRARY) @Override
public final void onBindViewHolder(ItemViewHolder holder, int adapterPosition,
    List<Object> payloads) {
  ItemBinder baseBinder = binders.get(holder.getItemViewType());

  int totalCount = 0;
  for (BaseDataManager dataManager : dataManagers) {
    totalCount += dataManager.getCount();
    if (adapterPosition < totalCount) {
      int itemPosition = getItemPositionInManager(adapterPosition);
      if (dataManager instanceof DataGroupManager) {
        dataManager = ((DataGroupManager) dataManager).getDataManagerForPosition(itemPosition);
      }
      //noinspection unchecked
      holder.setItem(dataManager.getItem(itemPosition));
      break;
    }
  }

  if (null == payloads || payloads.size() == 0) {
    //noinspection unchecked
    baseBinder.bindViewHolder(holder, holder.getItem());
  } else {
    //noinspection unchecked
    baseBinder.bindViewHolder(holder, holder.getItem(), payloads);
  }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号