public TextView name;
public TypeOneViewHolder(View itemView) {
super(itemView);
avatar = (ImageView)itemView.findViewById(R.id.avatar);
name = (TextView)itemView.findViewById(R.id.name);
itemView.setBackgroundColor(Color.BLACK);
}
@Override
public void bindHolder(DataModeOne model){
avatar.setBackgroundResource(model.avatarColor);
name.setText(model.name);
}
}
3.在Holder改造完成之后,那么我们看看Adapter的改造:
**
-
@author :huangxianfeng on 2017/3/14.
-
RecyclerView的适配器
*/
public class DemoAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
public static final int TYPE_ONE = 1;
public static final int TYPE_TWO = 2;
public static final int TYPE_THREE = 3;
private LayoutInflater mLayoutInflater;
public DemoAdapter(Context context) {
mLayoutInflater = LayoutInflater.from(context);
}
private ArrayList list1;
private ArrayList list2;
private ArrayList list3;
private ArrayList types = new ArrayList<>();
private Map<Integer,Integer> mPosition = new HashMap<>();
/**
- 创建一个方法供外面操作此数据
*/
public void addList(ArrayList list1,ArrayList list2,ArrayList list3){
addListByType(TYPE_ONE,list1);
addListByType(TYPE_TWO,list2);
addListByType(TYPE_THREE,list3);
this.list1 = list1;
this.list2 = list2;
this.list3 = list3;
}
private void addListByType(in