package com.lzx.demo.adapter; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import com.lzx.demo.ItemDecoration.StickyHeaderAdapter; import com.lzx.demo.R; public class InlineStickyTestAdapter extends RecyclerView.Adapter<InlineStickyTestAdapter.ViewHolder> implements StickyHeaderAdapter<InlineStickyTestAdapter.HeaderHolder> { private LayoutInflater mInflater; public InlineStickyTestAdapter(Context context) { mInflater = LayoutInflater.from(context); } @Override public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) { final View view = mInflater.inflate(R.layout.item_inline_test, viewGroup, false); return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder viewHolder, int i) { viewHolder.item.setText("Item " + i); } @Override public int getItemCount() { return 50; } @Override public long getHeaderId(int position) { return (long) position / 7; } @Override public HeaderHolder onCreateHeaderViewHolder(ViewGroup parent) { final View view = mInflater.inflate(R.layout.header_inline_test, parent, false); return new HeaderHolder(view); } @Override public void onBindHeaderViewHolder(HeaderHolder viewholder, int position) { viewholder.header.setText(getHeaderId(position) + ""); } static class ViewHolder extends RecyclerView.ViewHolder { public TextView item; public ViewHolder(View itemView) { super(itemView); item = (TextView) itemView; } } static class HeaderHolder extends RecyclerView.ViewHolder { public TextView header; public HeaderHolder(View itemView) { super(itemView); header = (TextView) itemView; } } }