从远程服务器加载图像?

问题描述:

我在一些活动中有几个图像,并且这些图像都是从远程服务器连接的。问题是每次我去看看这些包含来自远程服务器的图像的活动时。所有的图像必须首先加载,否则你会得到一个黑色的空屏幕。有时需要大约1-5分钟才能加载,有时甚至会强制关闭设备。无论如何,我可以解决这个问题吗?从远程服务器加载图像?

这里是我使用的代码:我一直在挣扎了好几天试图弄清楚这一点

ImageViewimgView =(ImageView)findViewById(R.id.image01); 
     Drawable drawable = LoadImageFromWebOperations("http://forum.roda.hr/images/customavatars/avatar10164_2.gif"); 
     imgView.setBackgroundDrawable(drawable); 



private Drawable LoadImageFromWebOperations(String url) { 
     try { 
      InputStream is = (InputStream) new URL(url).getContent(); 
      Drawable d = Drawable.createFromStream(is, "src name"); 
      return d; 
      } 
     catch (Exception e) { 
      System.out.println("Exc="+e); 
      return null; 
     } 
    } 

,请帮帮我,那将是真正的意思是对我很重要。提前致谢!

http://www.androidpeople.com/android-load-image-url-example

这应该帮助..

和JETT尝试做它在慵懒AsynTask做在后台加载..

+0

这就是我现在正在使用的,它需要永久加载 – 2011-03-28 12:38:26

+0

你有没有在清单文件中的APP的互联网许可? – Jana 2011-03-28 12:52:58

+0

是的,我的清单上有它 – 2011-03-28 12:59:20

关键是您应该使用Thread从Internet加载图像。
请参考Android - How do I do a lazy load of images in ListView来达到此目的。

更好地使用线程下载图像。
请参阅本
Load Image from server using thread
Painless Threading

+0

我尝试从“使用线程加载图像从服务器”的代码,但它似乎不工作,因为它强制关闭 – 2011-03-28 12:07:49

+0

它终于工作,但它它没有显示任何图像! – 2011-03-28 12:14:44

+0

你有什么错误? – 2011-03-28 12:31:12