I'm new on Android material design and wanna use Recycle View instead of List View but having problem on implement OnClickListener.
I find out that RecyclerView.Adapter a bit different from ListView.Adapter.
first I impelement OnClick listener in onBindViewHolder but it returns wrong item numbers and lead to out of-bound after some removing.
 @Override
    public void onBindViewHolder(PersonViewHolder personViewHolder, int i) {
 final int index = i ;
personViewHolder.cv.setOnClickListener(new View.OnClickListener() {
                    @Override
                   public void onClick(View v) {
    ...           items.get(index).gettext();
    }
so I find out that I should implement OnClikListener in my ViewHolder class as this link.
but in this case never inter to OnClick.
 public static class PersonViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
    @Override
    public void onClick(View v) {
        Log.i("log","position="+getAdapterPosition());
    }
}
 public CardViewAdapter(List<MessageTO> persons) {
        this.items = persons;
    }
@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
    super.onAttachedToRecyclerView(recyclerView);
}
@Override
public PersonViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
    View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.deposite_card_view, viewGroup, false);
    PersonViewHolder pvh = new PersonViewHolder(v);
    return pvh;
}
@Override
public void onBindViewHolder(PersonViewHolder personViewHolder, int i) {
...
}
also I find out that I should do my Initializing item values all in onBindViewHolder is it right or not? I am very confused.
 
     
    