Android:如何从Url加载图像?

时间:2014-04-06 19:11:07

标签: android web-services

我需要将图片从URL加载到Android应用程序中。

接下来,我创建了一个示例android项目,它将调用.NET Web服务

    while (reader.Read())
    {
        result.Append(reader["Pic"].ToString() + "<b><font size=600 face=sans-serif color=#243c45>"
            + Convert.ToDateTime(reader["PicDate"]).ToString("dd/MM/yyyy") + "</font></b><br />" 
            + reader["PicTitle"].ToString() + "<br /><a href=http://www.xxxxxxx.com/?ID=" 
            + reader["PicID"].ToString() + ">http://www.xxxxxxx.com/?ID=" + reader["PicID"].ToString() + "</a><br /><br /><br />");
    }

我在智能手机上尝试了输出。

通过.NET Web服务从数据库中获取的所有值都在Android应用程序和智能手机中正确发布,只有

的值
reader["Pic"].ToString()

显示图像的链接而不是图像:

https://lh6.googleusercontent.com/ ........

我该怎么办?

谢谢,

修改

感谢您的帮助,我在申请中使用:

 SoapPrimitive response = (SoapPrimitive)envelope.getResponse();
 textView.setText(Html.fromHtml(response.toString()));
 textView.setMovementMethod(LinkMovementMethod.getInstance());

我在此链接https://github.com/koush/UrlImageViewHelper

上尝试了此lib
try {
    httpTransport.call(SOAP_ACTION, envelope);

    SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
    UrlImageViewHelper.setUrlDrawable(imagepic, "http://www.myurl/images/logo.gif");

    textView.setText(Html.fromHtml(response.toString()));
    textView.setMovementMethod(LinkMovementMethod.getInstance());               

} catch (Exception exception) {
    textView.setText(exception.toString());
}

但我发现了这个错误:

java.lang.NullPointerException

2 个答案:

答案 0 :(得分:0)

有一个解决方案,它是URLImageViewHelper。

尝试在此链接https://github.com/koush/UrlImageViewHelper

上找到此lib

基本用法:

UrlImageViewHelper.setUrlDrawable(imageView, "http://example.com/image.png");

我相信你会找到你需要的一切。

希望这会有所帮助:)

答案 1 :(得分:-1)

您可以尝试使用Universal Image Loader或Picasso。它有缓存和线程解决方案,许多实用程序和易于使用

我正在使用Universal Image Loader。 github上的Library和Sample的源代码 https://github.com/nostra13/Android-Universal-Image-Loader

毕加索主页: http://square.github.io/picasso/