package com.example.jingbin.cloudreader.view.test;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.example.jingbin.cloudreader.R;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author linxiao
* @version 1.0.0
*/
public class RCVListAdapter extends RecyclerView.Adapter<RCVListAdapter.ItemHolder> {
private static final int TYPE_HEADER = 0;
private static final int TYPE_ITEM = 1;
Context context;
private List<String> dataSource = new ArrayList<>();
private View header;
public RCVListAdapter(Context context) {
this.context = context;
}
public void setDataSource(List<String> dataSource){
this.dataSource = dataSource;
}
public boolean isHeader(int position) {
return position == 0;
}
public void setHeader(View v) {
header = v;
}
@Override
public ItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
Log.d("RCVListAdapter", "onCreateViewHolder");
if (viewType == TYPE_HEADER) {
return new ItemHolder(header);
}
View itemView = LayoutInflater.from(context).inflate(R.layout.item_list, parent, false);
return new ItemHolder(itemView);
}
@Override
public void onBindViewHolder(ItemHolder holder, int position) {
}
@Override
public int getItemViewType(int position) {
return isHeader(position) ? TYPE_HEADER : TYPE_ITEM;
}
@Override
public int getItemCount() {
return dataSource.size() + 1;
}
class ItemHolder extends RecyclerView.ViewHolder {
public ItemHolder(View itemView) {
super(itemView);
}
}
}