Esta es la contestación más completa que encomtrarás compartir, pero estúdiala pausadamente y valora si se puede adaptar a tu proyecto.
Solución:
¿Has visto este artículo? Se trata de RecyclerView. Autor utiliza Picasso en adaptador.
@Override
public void onBindViewHolder(FeedListRowHolder feedListRowHolder, int i)
FeedItem feedItem = feedItemList.get(i);
Picasso.with(mContext).load(feedItem.getThumbnail())
.error(R.drawable.placeholder)
.placeholder(R.drawable.placeholder)
.into(feedListRowHolder.thumbnail);
feedListRowHolder.title.setText(Html.fromHtml(feedItem.getTitle()));
Tuve el mismo problema cuando quería cargar una imagen desde su URL con API en RecyclerView.Adapter y RecyclerView.ViewHolder extendidos.
En primer lugar, debe verificar que la URL no esté vacía o null y luego cargarlo con Picasso.
@Override
public void onBindViewHolder(ViewHolder viewHolder, int i)
RssItem item = rssItems.get(i);
if(item.imageLink!=null && !item.imageLink.isEmpty())
Picasso.with(F.context)
.load(item.imageLink)
.placeholder(R.drawable.default_placeholder)
.error(R.drawable.error_placeholder)
// To fit image into imageView
.fit()
// To prevent fade animation
.noFade()
.into(viewHolder.postImage);
else
viewHolder.postImage.setImageDrawable(ContextCompat.getDrawable(F.context,R.drawable.default_placeholder));
viewHolder.postTitle.setText(item.title);
viewHolder.postAuthor.setText(item.postWriter);
viewHolder.postDate.setText(item.pubDate);
Por fin debes ser consciente de viewHolder.postImage
y como se encuentra. Puede ser null o no se encontró la vista por id correctamente.
use solo un código simple:
@Override
public void onBindViewHolder(ShivaViewholder holder, int position)
Picasso.get().load("http://i.imgur.com/DvpvklR.png").into(holder.imageView2);
Pero si también desea la imagen en el ícono, o desea la ubicación, usaremos algún código adicional en este código.
Te mostramos las reseñas y valoraciones de los usuarios
Si conservas algún titubeo y capacidad de mejorar nuestro escrito puedes dejar una referencia y con mucho gusto lo estudiaremos.