I want to using RecyclerView and show images using Library Glide.
public void onBindViewHolder(CustomViewHolder holder, int position) {
Sisop current = sisop.get(position);
holder.namaItemView.setText(current.nama);
Glide.with(context)
.load(sisop.get(position).gambar)
.placeholder(R.mipmap.ic_launcher)
.into(holder.img_icon);
}
how to do if when i click the image will appear toast that contains the name of the item being clicked?
Try this set ClickListener
to your holder.img_icon
like this
public void onBindViewHolder(CustomViewHolder holder, int position) {
Sisop current = sisop.get(position);
holder.namaItemView.setText(current.nama);
Glide.with(context)
.load(sisop.get(position).gambar)
.placeholder(R.mipmap.ic_launcher)
.into(holder.img_icon);
holder.img_icon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(view.getContext(),sisop.get(position).gambar +" is Clicked", Toast.LENGTH_SHORT).show();
}
});
}
Update as per suggetion of @v-rund-puro-hit
class YourViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
ImageView img_icon;
public CustomViewHolder(View itemView) {
super(itemView);
img_icon = (ImageView) itemView.findViewById(R.id.img_icon);
img_icon.setOnClickListener(this);
}
@Override
public void onClick(View view) {
if(view.getId() == R.id.img_icon){
Toast.makeText(view.getContext(), sisop.get(getAdapterPosition()).nama+" is Clicked", Toast.LENGTH_SHORT).show();
}
}
}