Имеется список с изображениями. Код адаптера:
public class InventoryAdapter extends RecyclerView.Adapter<InventoryAdapter.Holder> {
public static final String TAG = "InventoryAdapter";
private ImageLoader imageLoader;
private JSONArray data;
public InventoryAdapter(ImageLoader imageLoader, JSONArray data) {
this.imageLoader = imageLoader;
this.data = data;
}
@Override
public Holder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.inventory_list_item, parent, false);
Holder holder = new Holder(view);
holder.image = (ImageView) view.findViewById(R.id.inventory_item_image);
return holder;
}
@Override
public void onBindViewHolder(final Holder holder, int position) {
try {
JSONObject item = data.getJSONObject(position);
final String uri = "https://steamcommunity-a.akamaihd.net/economy/image/class/730/"
+ item.getString("classid") + "/70fx70f";
imageLoader.loadImage(uri, new SimpleImageLoadingListener() {
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
holder.image.setImageBitmap(loadedImage);
}
});
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public int getItemCount() {
return data.length();
}
public static class Holder extends RecyclerView.ViewHolder {
public ImageView image;
public Holder(View itemView) {
super(itemView);
}
}
}
Проблема видна на гифке (изображения заменяются во время прокрутки):
Для загрузки изображений используется вот эта библиотека:
https://github.com/nostra13/Android-Universal-Imag...