FavoritePath
Cargando...
Buscando...
Nada coincide
ListColeccionesAdapter.java
1package uo269509.favoritepath.adapter;
2
3import android.view.LayoutInflater;
4import android.view.View;
5import android.view.ViewGroup;
6import android.widget.ImageView;
7import android.widget.TextView;
8
9import androidx.core.content.ContextCompat;
10import androidx.recyclerview.widget.RecyclerView;
11
12import java.util.ArrayList;
13
14import uo269509.favoritepath.R;
15import uo269509.favoritepath.modelos.Coleccion;
16
17
18public class ListColeccionesAdapter extends RecyclerView.Adapter<ListColeccionesAdapter.ColeccionViewHolder> {
19
20 private ArrayList<Coleccion> colecciones;
21 private final OnItemClickListener listener;
22
23 public ListColeccionesAdapter(ArrayList<Coleccion> colecciones, OnItemClickListener listener) {
24 this.colecciones = colecciones;
25 this.listener = listener;
26 }
27
34 @Override
35 public ColeccionViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
36 View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.linear_recycler_view_coleccion, parent, false);
37 return new ColeccionViewHolder(itemView);
38 }
39
45 @Override
46 public void onBindViewHolder(ColeccionViewHolder holder, int position) {
47 if(position % 2 == 0){
48 holder.itemView.setBackground(ContextCompat.getDrawable(holder.itemView.getContext(), R.drawable.card_shape_yellow));
49 }
50 Coleccion coleccion = colecciones.get(position);
51 holder.bindUser(coleccion, listener);
52 }
53
58 @Override
59 public int getItemCount() {
60 return colecciones.size();
61 }
62
63 public interface OnItemClickListener{
64 void onItemClick(Coleccion item, boolean delete);
65 }
66
67 public static class ColeccionViewHolder extends RecyclerView.ViewHolder {
68
69 private TextView titulo;
70 private ImageView delete;
71
72 public ColeccionViewHolder(View itemView){
73 super(itemView);
74 titulo = itemView.findViewById(R.id.tituloLabel);
75 delete = itemView.findViewById(R.id.share);
76 }
77
78 public void bindUser(final Coleccion coleccion, final OnItemClickListener listener){
79 titulo.setText(coleccion.getTitulo());
80 itemView.setOnClickListener((v) -> {
81 listener.onItemClick(coleccion,false);
82 });
83 if(!(coleccion.getTitulo().equals("Rutas propias") || coleccion.getTitulo().equals("Rutas favoritas"))) {
84 delete.setOnClickListener((v) -> {
85 listener.onItemClick(coleccion, true);
86 });
87 }else{
88 delete.setVisibility(View.GONE);
89 }
90 }
91 }
92}
void onBindViewHolder(ColeccionViewHolder holder, int position)
ColeccionViewHolder onCreateViewHolder(ViewGroup parent, int viewType)