如何将图像从URL转换为Drawable

时间:2011-02-24 10:30:34

标签: android drawable

我在将图像转换为Drawable对象时遇到问题。我正在使用以下方式转换图像:

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) {
        System.out.println("Exc=" + e);
        return null;
    }
}

我正在尝试将Drawable放入HashMap并将其插入ListAdapter,但Drawable的值始终为{{1}而不是一个整数,我在logcat中得到消息

  

resolveUri在错误的位图uri上失败“。

这就是我将android.graphics.drawable.BitmapDrawable@405359b0放在Drawable中的方式:

HashMap

1 个答案:

答案 0 :(得分:2)

为什么你认为drawable是一个整数?这是一个可以分配给imageView

的对象

你的项目中有些项目你可以用他们的ID来引用,这是真的,但那是别的。

R.drawable.icon不是Drawable,与R.view.your_Button不是Button的意义相同。您可以在其上调用getViewFromId()之类的内容。如果您的功能如下:

 doSomethingWithView(R.view.id);

然后它不适用于(伪代码)

 myView = new Button();
 doSomethingWithView(myView);

因此,如果您的函数与R.drawable.id一起使用,则它很可能与Drawable一起使用(除了过载事件)。