package com.camnter.newlife.adapter.easyrecyclerview; import android.widget.ImageView; import android.widget.TextView; import com.camnter.easyrecyclerview.adapter.EasyRecyclerViewAdapter; import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; import com.camnter.newlife.R; import com.camnter.newlife.bean.RecyclerViewData; /** * Description:MyRecyclerViewAdapter * Created by:CaMnter * Time:2015-10-21 17:00 */ public class MyRecyclerViewAdapter extends EasyRecyclerViewAdapter { private static final int MULTIPLE_ITEM_TYPE = 0; private static final int SINGLE_ITEM_TYPE = 1; /** * 请返回 RecycleView 加载的布局Id数组 * * @return 布局 Id 数组 */ @Override public int[] getItemLayouts() { return new int[] { R.layout.item_recyclerview_multiple, R.layout.item_recyclerview_single }; } /** * 对接了 onBindViewHolder * onBindViewHolder 里的逻辑写在这 * * @param viewHolder viewHolder * @param position position */ @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { int itemType = this.getRecycleViewItemType(position); RecyclerViewData data = this.getItem(position); switch (itemType) { case MULTIPLE_ITEM_TYPE: { TextView multipleTV = viewHolder.findViewById(R.id.recycler_view_mul_tv); ImageView multipleIV = viewHolder.findViewById(R.id.recycler_view_mul_iv); multipleTV.setText(data.content); multipleIV.setImageResource(data.imageResId); break; } case SINGLE_ITEM_TYPE: { ImageView singleIV = viewHolder.findViewById(R.id.recycler_view_single_iv); singleIV.setImageResource(data.imageResId); break; } } } /** * 如果是多布局的话,请写判断逻辑 * 单布局可以不写 * * @param position Item position * @return 布局 Id 数组中的 index */ @Override public int getRecycleViewItemType(int position) { if (position % 2 == 0) { return SINGLE_ITEM_TYPE; } else { return MULTIPLE_ITEM_TYPE; } } }