我在将ImageView图像设置为从URL中提取的图像时遇到问题。以下是用于将URL转换为Drawable对象的方法:
private Drawable LoadImage(String url){
try
{
InputStream is = (InputStream) new URL(url).getContent();
Drawable d = Drawable.createFromStream(is, "src");
return d;
}catch (Exception e) {
System.out.println("Exc="+e);
return null;
}
}
以下是调用方法的代码:
Drawable drawable = LoadImage("www.myurl.com/image.jpg");
imageView.setImageDrawable(drawable); //here is where I think it goes wrong
它给了我一个空指针异常但是当我在文本视图中显示drawable.toString()变量时,我得到这样的结果:
android.graphics.drawable.BitMapDrawable@43e5bb18
因此它表明它没有返回null并且在尝试绘制它时失败。我在清单中遗漏了什么或者我的代码有问题吗?
答案 0 :(得分:1)
首先......不要在Android上使用System.out。请改用Log。
我假设您的LoadImage函数返回null。
查看有关ddms和logcat是什么的文档,然后尝试获取有关所发生情况的更多信息。