У меня проблема с изображением, я пытаюсь получить изображения с сервера в списке, но если я обновляю изображение из приложения, оно успешно отправляется на сервер, но когда я получаю новые данные, я получаю старое изображение, я очищаю Picasso
кэш-память по-прежнемустарое изображение отображается здесь мой код.Есть ли другое решение для очистки кеша Picasso
public class WorkerListAdapter extends RecyclerView.Adapter<WorkerListAdapter.MyViewHolder> {
private static final int REQUEST_PHONE_CALL = 1;
private List<ItemWorkerList> itemWorkerListList;
private Context context;
public class MyViewHolder extends RecyclerView.ViewHolder {
public TextView tv_worker_name, tv_worker_type;
public CircleImageView iv_worker_image;
public ImageView iv_worker_images;
ImageView iv_edit_provider;
public LinearLayout ll_doc;
public ProgressBar pb_worker;
public MyViewHolder(View view) {
super(view);
this.setIsRecyclable(true);
tv_worker_name = (TextView) view.findViewById(R.id.tv_worker_name);
tv_worker_type = (TextView) view.findViewById(R.id.tv_worker_type);
iv_edit_provider = (ImageView) view.findViewById(R.id.iv_edit_provider);
iv_worker_image = (CircleImageView) view.findViewById(R.id.iv_worker_image);
iv_edit_provider = (ImageView) view.findViewById(R.id.iv_edit_provider);
pb_worker = (ProgressBar) view.findViewById(R.id.pb_worker);
}
}
public WorkerListAdapter(Context context, ArrayList<ItemWorkerList> itemWorkerListList) {
this.context = context;
this.itemWorkerListList = itemWorkerListList;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.item_worker_list, parent, false);
return new MyViewHolder(itemView);
}
@Override
public void onBindViewHolder(final MyViewHolder holder, final int position) {
final ItemWorkerList itemWorkerList = itemWorkerListList.get(position);
holder.tv_worker_name.setText(itemWorkerList.getName());
holder.tv_worker_type.setText(itemWorkerList.getCategory());
Picasso.get().invalidate(itemWorkerList.getImage());
Picasso.get().invalidate(itemWorkerList.getDocument());
if (!TextUtils.isEmpty(itemWorkerList.getImage())) {
Picasso.get().load(itemWorkerList.getImage()).memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE).into(holder.iv_worker_image, new Callback() {
@Override
public void onSuccess() {
holder.pb_worker.setVisibility(View.GONE);
}
@Override
public void onError(Exception e) {
holder.pb_worker.setVisibility(View.GONE);
Picasso.get().load(R.drawable.dummy).into(holder.iv_worker_image);
}
});
}