package com.tyy.recyclerview;
import java.util.ArrayList;
import java.util.List;import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.RecyclerView.ViewHolder;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.view.ViewGroup.LayoutParams;import android.widget.TextView;public class SampleAdapter extends RecyclerView.Adapter<ViewHolder> {
private List<Integer> list;private static final int TYPE_ITEM = 0;
private static final int TYPE_FOOTER = 1;public List<Integer> getList() {
return list; }public SampleAdapter() {
list = new ArrayList<Integer>(); }@Override
public int getItemCount() { return list.size()+1; }@Override
public int getItemViewType(int position) { if (position + 1 == getItemCount()) { return TYPE_FOOTER; } else { return TYPE_ITEM; } }@Override
public void onBindViewHolder(ViewHolder holder, final int position) { if (holder instanceof ItemViewHolder) { ((ItemViewHolder) holder).textView.setText(String.valueOf(list.get(position))); } }@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { if (viewType == TYPE_ITEM) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item_text, null); view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); return new ItemViewHolder(view); } else if (viewType == TYPE_FOOTER) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.footerview, null); view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); return new FooterViewHolder(view); } return null; }class FooterViewHolder extends ViewHolder {
public FooterViewHolder(View view) {
super(view); }}
class ItemViewHolder extends ViewHolder {
TextView textView;public ItemViewHolder(View view) {
super(view); textView = (TextView) view.findViewById(R.id.text); }}
}