Reputation: 483
im creating a project that needs a horizontal recyclerview in adapter class i have a problem with ViewHolder, its my code :
public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
private ArrayList<String> mNames = new ArrayList<>();
private ArrayList<String> imageUrls = new ArrayList<>();
private Context mContext;
public RecyclerViewAdapter(Context mContext, ArrayList<String> mNames, ArrayList<String> imageUrls) {
this.mNames = mNames;
this.imageUrls = imageUrls;
this.mContext = mContext;
}
@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.layout_listitem,viewGroup,false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder viewHolder, int i) {
Glide.with(mContext)
.asBitmap()
.load(imageUrls.get(i))
.into(viewHolder.image);
}
@Override
public int getItemCount() {
return mNames.size();
}
public class ViewHolder extends RecyclerView.ViewHolder{
ImageView image;
TextView name;
public ViewHolder(@NonNull View itemView) {
super(itemView);
image = itemView.findViewById(R.id.iv_overlay);
name = itemView.findViewById(R.id.name);
}
}
}
my problem is that .into(viewHolder.image) is returning an error : Error:(47, 33) error: cannot find symbol variable image
what should i do?
Upvotes: 0
Views: 227
Reputation:
public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder> {
private ArrayList<String> mNames = new ArrayList<>();
private ArrayList<String> imageUrls = new ArrayList<>();
private Context mContext;
public RecyclerViewAdapter(Context mContext, ArrayList<String> mNames, ArrayList<String> imageUrls) {
this.mNames = mNames;
this.imageUrls = imageUrls;
this.mContext = mContext;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.layout_listitem, viewGroup, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {
Glide.with(mContext)
.asBitmap()
.load(imageUrls.get(i))
.into(viewHolder.image);
}
@Override
public int getItemCount() {
return mNames.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
ImageView image;
TextView name;
public ViewHolder(@NonNull View itemView) {
super(itemView);
image = itemView.findViewById(R.id.iv_overlay);
name = itemView.findViewById(R.id.name);
}
}
}
Upvotes: 1