我想从网址下载图片并将其显示在自定义视图中。我无法解析setImageBitmap方法。如何将图像从网址显示到自定义imageview?我的自定义视图的名称是MemeEditorView。
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.util.Log;
import com.dragedy.dream.view.MemeEditorView;
import java.io.InputStream;
/**
* Created by Jai Mahlawat on 3/12/2017.
*/
class ImageDownloader extends AsyncTask<String, Void, Bitmap> {
MemeEditorView memeEditorView;
public ImageDownloader(MemeEditorView memeEditorView) {
this.memeEditorView = memeEditorView;
}
protected Bitmap doInBackground(String... urls) {
String url = urls[0];
Bitmap mIcon = null;
try {
InputStream in = new java.net.URL(url).openStream();
mIcon = BitmapFactory.decodeStream(in);
} catch (Exception e) {
Log.e("Error", e.getMessage());
}
return mIcon;
}
protected void onPostExecute(Bitmap result) {
memeEditorView.setImageBitmap(result);
}
}
答案 0 :(得分:0)
Picasso和Glide等图书馆可让您轻松完成自己想要的工作。
例如,使用毕加索:
Picasso.with(context).load("//**Your URL Here**//").into(MemeEditorView);
使用Picasso和Glide也有助于缓存,裁剪,调整大小和其他图像功能。
答案 1 :(得分:0)
您需要确保MemeEditorView扩展ImageView,否则您可能需要使用setBackground方法。