如何在ImageView中将图片从Internet上放入?

时间:2012-08-10 16:53:15

标签: java android imageview

  

可能重复:
  Loading remote images

如何将图片从互联网上放入ImageView?

ImageView image = (ImageView) findViewById(R.id.main_layout_image_cover);

图像。(?!);

2 个答案:

答案 0 :(得分:1)

这里使用:

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);

当然这将在下载时阻止当前线程,因此您应该使用AsyncTask

答案 1 :(得分:0)

假设您有图片网址,这里有一个代码示例,可以下载图片并将其分配给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将冻结。