如何将图像从URL转换为Drawable

问题描述 投票:0回答:1

我在将图像转换为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的值始终类似于android.graphics.drawable.BitmapDrawable@405359b0而不是整数,我得到了消息在logcat中

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

这是将Drawable放入HashMap的方式:

map.put("cover", String.valueOf(
    Main.this.LoadImageFromWebOperations("http://www.asdfasfs.com/dasfas.jpg")));
android drawable
1个回答
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一起使用的可能性很小(除非课程重载)。>

© www.soinside.com 2019 - 2024. All rights reserved.