在复合可绘制的 URL 中加载图像



我有一个listview CompoundDrawable,复合中的图像drawable需要从网上加载。 如何将图像从 URL 加载到CompoundDrawable。我认为我可以从URL获取位图图像将其转换为可绘制对象,然后将其加载到复合可绘制对象中。喜欢这个

public static Drawable drawableFromUrl(String url) throws IOException {
    Bitmap x;
    HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
    connection.connect();
    InputStream input = connection.getInputStream();
    x = BitmapFactory.decodeStream(input);
    return new BitmapDrawable(x);
}

有没有更好的方法? 我可以直接做到这一点,而无需从 URL 获取位图,然后将位图转换为可绘制对象吗?

试试这个

public static Drawable getDrawableFromURL(String url1) {
    try {
        URL url = new URL(url1);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setDoInput(true);
        connection.connect();
        InputStream input = connection.getInputStream();
        Bitmap myBitmap = BitmapFactory.decodeStream(input);
        Drawable d = new BitmapDrawable(getResources(),myBitmap);
        return d;
    } catch (IOException e) {
        e.printStackTrace();
        return null;
    }
}

最新更新