package com.marktony.translator.adapter;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.marktony.translator.R;
import com.marktony.translator.interfaze.OnRecyclerViewOnClickListener;
import com.marktony.translator.model.NotebookMarkItem;
import java.util.ArrayList;
/**
* Created by lizhaotailang on 2016/7/12.
*/
public class NotebookMarkItemAdapter extends RecyclerView.Adapter<NotebookMarkItemAdapter.ItemViewHolder> {
private final Context context;
private final LayoutInflater inflater;
private ArrayList<NotebookMarkItem> list;
private OnRecyclerViewOnClickListener mListener;
public NotebookMarkItemAdapter(@NonNull Context context, ArrayList<NotebookMarkItem> list){
this.context = context;
this.inflater = LayoutInflater.from(context);
this.list = list;
}
@Override
public ItemViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new ItemViewHolder(inflater.inflate(R.layout.notebook_mark_item,parent,false),mListener);
}
@Override
public void onBindViewHolder(final ItemViewHolder holder, final int position) {
NotebookMarkItem item = list.get(position);
holder.tvOutput.setText(item.getInput() + "\n" + item.getOutput());
}
@Override
public int getItemCount() {
return list.size();
}
public void setItemClickListener(OnRecyclerViewOnClickListener listener){
this.mListener = listener;
}
public class ItemViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
TextView tvOutput;
ImageView ivMarkStar;
ImageView ivCopy;
ImageView ivShare;
OnRecyclerViewOnClickListener listener;
public ItemViewHolder(View itemView, final OnRecyclerViewOnClickListener listener) {
super(itemView);
tvOutput = (TextView) itemView.findViewById(R.id.text_view_output);
ivMarkStar = (ImageView) itemView.findViewById(R.id.image_view_mark_star);
ivCopy = (ImageView) itemView.findViewById(R.id.image_view_copy);
ivShare = (ImageView) itemView.findViewById(R.id.image_view_share);
this.listener = listener;
itemView.setOnClickListener(this);
ivMarkStar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.OnSubViewClick(ivMarkStar,getLayoutPosition());
}
});
ivCopy.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.OnSubViewClick(ivCopy,getLayoutPosition());
}
});
ivShare.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.OnSubViewClick(ivShare,getLayoutPosition());
}
});
}
@Override
public void onClick(View view) {
if (listener != null){
listener.OnItemClick(view,getLayoutPosition());
}
}
}
}