Skip to content

Instantly share code, notes, and snippets.

@matheus-souza
Created February 13, 2017 00:10
Show Gist options
  • Save matheus-souza/17f2ba958273033b158b5a9b18faaea6 to your computer and use it in GitHub Desktop.
Save matheus-souza/17f2ba958273033b158b5a9b18faaea6 to your computer and use it in GitHub Desktop.
Exemplo de adapter para recyclerview
public class ExemploAdapter extends RecyclerView.Adapter<ExemploAdapter.ExemploViewHolder> {
private final ArrayList<Exemplo> exemploArrayList;
private final Context context;
private ExemploOnClickListener exemploOnClickListener;
public ExemploAdapter(Context context, ArrayList<Exemplo> exemploArrayList, ExemploOnClickListener exemploOnClickListener) {
this.context = context;
this.exemploArrayList = exemploArrayList;
this.exemploOnClickListener = exemploOnClickListener;
}
@Override
public int getItemCount() {
return this.exemploArrayList != null ? this.exemploArrayList.size() : 0;
}
@Override
public ExemploViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.content_exemplo, viewGroup, false);
ExemploViewHolder holder = new ExemploViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(final ExemploViewHolder holder, final int position) {
//Atualiza a view
Exemplo e = exemploArrayList.get(position);
holder.tvExemplo.setText(a.getNome());
//Click
if (exemploOnClickListener != null) {
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
exemploOnClickListener.onClickExemplo(holder.itemView, position);
}
});
}
}
public interface ExemploOnClickListener {
public void onClickExemplo(View view, int idx);
}
public class ExemploViewHolder extends RecyclerView.ViewHolder {
TextView tvExemplo;
public ExemploViewHolder(View view) {
super(view);
tvExemplo = (TextView) view.findViewById(R.id.card_tv_exemplo);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment