Hey there I want to add pictures to favorite activity when a user tap on a picture. So far I'm able to get the data but don't know how to pass it to my favorite activity. How should I approach this problem, perhaps using intent and broadcast? Any help would be appreciated. Thanks
Here's my MyRecyclerAdapter class
public class MyRecyclerAdapter extends RecyclerView.Adapter<MyViewHolder>{
Context c;
ArrayList<Album> albums;
public MyRecyclerAdapter(Context c, ArrayList<Album> albums){
this.c=c;
this.albums=albums;
}
// Initialize holder
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.model,null);
MyViewHolder holder = new MyViewHolder(v);
return holder;
}
//Bind data to views
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
holder.nameTxt.setText(albums.get(position).getName());
holder.img.setImageResource(albums.get(position).getImage());
//listener
holder.setItemClickListener(new ItemClickListener() {
@Override
public void onItemClick(View v, int pos) {
Toast.makeText(c,albums.get(pos).getName() + " ,added to favorite ",Toast.LENGTH_SHORT).show();
// albums.get(pos).getName();
}
});
}
@Override
public int getItemCount() {
return albums.size();
}
}
Here's my MyViewHolder class
public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
ImageView img;
TextView nameTxt;
ItemClickListener itemClickListener;
public MyViewHolder(View itemView) {
super(itemView);
nameTxt=(TextView) itemView.findViewById(R.id.nameTxt);
img = (ImageView) itemView.findViewById(R.id.movieImage);
itemView.setOnClickListener(this);
}
public void setItemClickListener(ItemClickListener ic)
{
this.itemClickListener=ic;
}
@Override
public void onClick(View v) {
this.itemClickListener.onItemClick(v,getLayoutPosition());
}
}