MeteoriteDB

Log | Files | Refs | README

commit 5093e433e7df4d377ef1a6518a18033848fdb5a9
parent e1d11a034300e31c66dbd5624d7d3d6605b37f1a
Author: William Lindholm <william_lindholm@outlook.com>
Date:   Thu,  4 May 2023 17:00:09 +0200

Added onClickListener to recyclerItems. (putExtra Parceable meteorite object. Start meteoriteActivity.)

Diffstat:
Mapp/src/main/java/com/example/project_assignment/RecyclerViewAdapter.java | 27+++++++++++++++++++++------
1 file changed, 21 insertions(+), 6 deletions(-)

diff --git a/app/src/main/java/com/example/project_assignment/RecyclerViewAdapter.java b/app/src/main/java/com/example/project_assignment/RecyclerViewAdapter.java @@ -1,6 +1,9 @@ package com.example.project_assignment; import android.content.Context; +import android.content.Intent; +import android.os.Parcel; +import android.os.Parcelable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -13,8 +16,8 @@ import java.util.List; public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.MyViewHolder> { - private List<Meteorite> meteorites; - private Context context; + private final List<Meteorite> meteorites; + private final Context context; public RecyclerViewAdapter(Context context, List<Meteorite> meteorites) { this.context = context; @@ -26,6 +29,7 @@ public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapte public RecyclerViewAdapter.MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { LayoutInflater inflater = LayoutInflater.from(context); View view = inflater.inflate(R.layout.recycler_item, parent, false); + return new RecyclerViewAdapter.MyViewHolder(view); } @@ -41,16 +45,27 @@ public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapte return meteorites.size(); } - public static class MyViewHolder extends RecyclerView.ViewHolder { - TextView meteoriteName; - TextView meteoriteMass; - TextView MeteoriteAge; + public class MyViewHolder extends RecyclerView.ViewHolder { + TextView meteoriteName, meteoriteMass, MeteoriteAge; + public MyViewHolder(@NonNull View itemView) { super(itemView); meteoriteName = itemView.findViewById(R.id.textview_meteoriteName); meteoriteMass = itemView.findViewById(R.id.textview_meteoriteMass); MeteoriteAge = itemView.findViewById(R.id.textview_meteoriteAge); + + itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent intent = new Intent(context, MeteoriteActivity.class); + + Meteorite meteorite = meteorites.get(getAdapterPosition()); + intent.putExtra("meteorite", meteorite); + + context.startActivity(intent); + } + }); } } } \ No newline at end of file