Ich mache eine Anwendung, wo ich eine Liste von Kartenansichten mit einem Recyclerview zeige, und ich möchte in der Lage sein, eine Detailaktivität zu machen Der cardview der Benutzer klickt, aber ich weiß nicht, wie man den Gegenstand, der angeklickt wird, an die nächste Aktivität sendet.Wie kann ich die Informationen der Karte erhalten, die ich anklicke, um sie an die nächste Aktivität zu senden
Hier kann u mein Adapter sehen:
/** * Erstellt von alberto auf 18/05/16. */
public class EmpresasAdapter extends RecyclerView.Adapter<EmpresasAdapter.EmpresasViewHolder>
implements ItemClickListener{
private final Context context;
private List<Empresas> items;
public EmpresasAdapter(Context context, List<Empresas> items) {
this.context = context;
this.items = items;
}
@Override
public int getItemCount() {
return items.size();
}
@Override
public EmpresasViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View v = LayoutInflater.from(viewGroup.getContext())
.inflate(R.layout.empresa_card, viewGroup, false);
return new EmpresasViewHolder(v, this);
}
@Override
public void onBindViewHolder(EmpresasViewHolder viewHolder, int i) {
// Item procesado actualmente
Empresas currentItem = items.get(i);
viewHolder.nombrep.setText(currentItem.getNombre());
viewHolder.descripcionp.setText(currentItem.getDescripcionC());
viewHolder.franquiciap.setText(currentItem.getModalidad()+" | "+currentItem.getFranquicia());
// Cargar imagen
Glide.with(context)
.load(currentItem.getImagen())
.into(viewHolder.imagenp);
}
@Override
public void onItemClick(View view, int position) {
// Imagen a compartir entre transiciones
View sharedImage = view.findViewById(R.id.imagenp);
EmpresaDetalle.launch(
(Activity) context, position, sharedImage);
}
/**
* View holder para reciclar elementos
*/
public static class EmpresasViewHolder extends RecyclerView.ViewHolder
implements View.OnClickListener {
// Views para un curso
public ImageView imagenp;
public TextView nombrep;
public TextView descripcionp;
public TextView franquiciap;
// Interfaz de comunicación
public ItemClickListener listener;
public EmpresasViewHolder(View v, ItemClickListener listener) {
super(v);
nombrep = (TextView) v.findViewById(R.id.nombrep);
descripcionp = (TextView) v.findViewById(R.id.descripcionp);
franquiciap = (TextView) v.findViewById(R.id.Franquiciap);
imagenp = (ImageView) v.findViewById(R.id.imagenp);
v.setOnClickListener(this);
this.listener = listener;
}
@Override
public void onClick(View v) {
listener.onItemClick(v, getAdapterPosition());
}
}
welchen Artikel möchten Sie in der nächsten Aktivität senden? –
Ich möchte die Position im Array des Cardview bekommen, so dass ich alle Informationen, die ich zeigen möchte (die gleichen Informationen, die ich in der Karte anzeigen + etwas mehr) und verwenden Sie es in meiner Detailansicht – Mihawk