[英]How to get image from url to imageView to RecyclerView
我不会将JSON
分配的Image分配给url的ImageView
。 我想将获取的数据存储在RecyclerView
。
我尝试了许多建议用户的方法,例如:
Picasso.with(recyclerItem.getContext()).load(news.getUrlImage()).into(holder.imageView);
,
try {
Bitmap bitmap = BitmapFactory.decodeStream((InputStream)new URL(news.getUrlImage()).getContent());
holder.imageView.setImageBitmap(bitmap);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
带有和不带有AsyncTask
的情况,上述方法中的任何一个都不起作用。
从NewsAdapter.java(扩展RecyclerView.Adapter
类)的onBindViewHolder
方法覆盖:
public void onBindViewHolder(MyViewHolder holder, int position) {
Log.i(TAG, "onBindViewHolder: START");
News news = newsList.get(position);
holder.title.setText(news.getTitle());
holder.author.setText(news.getAuthor());
holder.publishedDate.setText(news.getPublishedAt());
Picasso.with(recyclerItem.getContext()).load(news.getUrlImage()).into(holder.imageView);
TextView
分配正确且运行良好,只有ImageView
造成了麻烦。
有谁知道如何使其正常工作?
您可以使用Picasso或Glide等图像加载库将图像加载到ImageView
。 它们都有相似的API。
一个例子:
public void onBindViewHolder(MyViewHolder holder, int position) {
String imgUrl = mData.get(position).getImageUrl;
//Picasso
Picasso.with(mContext).load(imgUrl).into(holder.mImageView);
//Glide
Glide.with(mContext).load(imgUrl).into(holder.mImageView);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.