У меня проблема при обновлении изображения в RecylcerView.Adapter
.У меня есть этот класс для моего адаптера:
public class ShowMembersAdapter extends RecyclerView.Adapter<ShowMembersAdapter.ViewHolder> {
private ArrayList<User> users;
private Context context;
private ShowTeamsAdapter.OnItemClickListener mListener;
public void setOnItemClickListener(ShowTeamsAdapter.OnItemClickListener listener) {
mListener = listener;
}
public static class ViewHolder extends RecyclerView.ViewHolder {
private CircleImageView mImage;
public ViewHolder(View itemView, ShowTeamsAdapter.OnItemClickListener listener) {
super(itemView);
mImage = itemView.findViewById(R.id.image);
itemView.setOnClickListener(view -> {
if (listener != null) {
int position = getAdapterPosition();
if (position != RecyclerView.NO_POSITION) {
listener.onItemClick(position);
}
}
});
}
}
public ShowMembersAdapter(ArrayList<User> users, Context context) {
this.users = users;
this.context = context;
}
@NonNull
@Override
public ShowMembersAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_member_item, parent, false);
ShowMembersAdapter.ViewHolder viewHolder = new ShowMembersAdapter.ViewHolder(v, mListener);
return viewHolder;
}
@Override
public void onBindViewHolder(@NonNull ShowMembers
String imageUrl = "MYURL" + users.get(position).getEmail() + ".jpg";
Picasso.get().load(imageUrl).resize(200,200).error(R.mipmap.ic_team_member_no_photo).into(holder.mImage);
}
@Override
public int getItemCount() {
return users.size();
}
}
Я заполняю этот класс из моего Fragment
.Он отлично работает, когда я запускаю приложение.Однако всякий раз, когда я обновляю изображение из приложения, я думаю, что адаптер не изменится, потому что URL-адрес изображения остается прежним.У вас есть другие идеи, которые я могу сделать?Как вы думаете, мне следует позвонить еще раз в Volley, чтобы получить изображения и сохранить их для каждого пользователя, чтобы я не звонил им напрямую с Adapter
?
Спасибо за вашу помощь!