FavoritePath
Cargando...
Buscando...
Nada coincide
ListSolicitudesAdapter.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.List;
13
14import uo269509.favoritepath.R;
15import uo269509.favoritepath.modelos.Solicitud;
16
17
18public class ListSolicitudesAdapter extends RecyclerView.Adapter<ListSolicitudesAdapter.SolicitudViewHolder> {
19
20 private List<Solicitud> solicitudes;
21 private final OnItemClickListener listener;
22
23 public ListSolicitudesAdapter(List<Solicitud> solicitudes, OnItemClickListener listener) {
24 this.solicitudes = solicitudes;
25 this.listener = listener;
26 }
27
34 @Override
35 public SolicitudViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
36 View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.linear_recycler_view_solicitud, parent, false);
37 return new SolicitudViewHolder(itemView);
38 }
39
45 @Override
46 public void onBindViewHolder(SolicitudViewHolder holder, int position) {
47 if(position % 2 == 0){
48 holder.itemView.setBackground(ContextCompat.getDrawable(holder.itemView.getContext(), R.drawable.card_shape_yellow));
49 }
50 Solicitud amigo = solicitudes.get(position);
51 holder.bindUser(amigo, listener);
52 }
53
58 @Override
59 public int getItemCount() {
60 return solicitudes.size();
61 }
62
63 public interface OnItemClickListener{
64 void onItemClick(Solicitud item, boolean aceptar);
65 }
66
67 public static class SolicitudViewHolder extends RecyclerView.ViewHolder {
68
69 private TextView titulo;
70 private ImageView aceptar;
71 private ImageView borrar;
72 private final String SOLICITUD_AMIGO = " envío una solicitud";
73 private final String SOLICITUD_RUTA = " compartió una ruta";
74
75 public SolicitudViewHolder(View itemView){
76 super(itemView);
77 titulo = itemView.findViewById(R.id.solicitudText);
78 aceptar = itemView.findViewById(R.id.imagenAceptar);
79 borrar = itemView.findViewById(R.id.imagenBorrar);
80 }
81
82 public void bindUser(final Solicitud solicitud, final OnItemClickListener listener){
83 if(solicitud.getRutaId() == null)
84 titulo.setText(solicitud.getTitulo() + SOLICITUD_AMIGO);
85 else
86 titulo.setText(solicitud.getTitulo() + SOLICITUD_RUTA);
87 aceptar.setOnClickListener((v) -> {
88 listener.onItemClick(solicitud, true);
89 });
90 borrar.setOnClickListener((v) -> {
91 listener.onItemClick(solicitud, false);
92 });
93 }
94 }
95}
void onBindViewHolder(SolicitudViewHolder holder, int position)
SolicitudViewHolder onCreateViewHolder(ViewGroup parent, int viewType)