Java 如何在ImageView中放置来自Internet的图片?
可能重复:Java 如何在ImageView中放置来自Internet的图片?,java,android,imageview,Java,Android,Imageview,可能重复: 如何在ImageView中放置来自Internet的图片 ImageView image = (ImageView) findViewById(R.id.main_layout_image_cover); 形象。(?) 这里使用这个: URL imageURL = new URL("http://...."); Bitmap image = BitmapFactory.decodeStream(imageUrl.openConnection().getInputStream())
如何在ImageView中放置来自Internet的图片
ImageView image = (ImageView) findViewById(R.id.main_layout_image_cover);
形象。(?) 这里使用这个:
URL imageURL = new URL("http://....");
Bitmap image = BitmapFactory.decodeStream(imageUrl.openConnection().getInputStream());
ImageView imageView = (ImageView) findViewById(R.id.main_layout_image_cover);
imageView.setImageBitmap(image);
当然,这将在下载时阻止当前线程,因此您应该使用异步任务假设您有图片url,下面是一个代码示例,可以下载图片并将其分配给
ImageView
Drawable drawable = LoadImageFromWebOperations(enclosure.getUrl());
if (drawable!=null)
img.setImageDrawable(drawable);
img.setScaleType(ScaleType.CENTER_CROP); // Used to crop the picture in case it is too big
public Drawable LoadImageFromWebOperations(String url) {
try{
InputStream is = (InputStream) new URL(url).getContent();
Drawable d = Drawable.createFromStream(is, "src name");
return d;
}catch (Exception e) {
return null;
}
我建议您在ASyncTask中插入这段代码,因为它将下载图片,并且这样的操作不打算在主线程上完成。如果不添加ASyncTask,UI将冻结