首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android -动态图片加载问题

Android -动态图片加载问题
EN

Stack Overflow用户
提问于 2010-10-25 21:06:42
回答 1查看 614关注 0票数 0

我目前正在尝试创建一个从互联网加载的图片库。

我使用了一个标准的Gallery对象,带有一个自定义适配器和一个自定义ImageView。一切都很好,除了图片下载。

我使用一个异步任务来做这件事(我让缩略图在加载时显示)。

它可以很好地加载缩略图,但对于“大”图像(每个大约50k ),效果不是很好。

我用这个来加载图片:

代码语言:javascript
复制
private class DownloadImageTask extends AsyncTask<String,Void,Drawable>{

    @Override
    protected Drawable doInBackground(String... arg0) {
        URL url;
        InputStream is;
        Drawable d=null;
        try {
            url = new URL(arg0[0]);
            is = (InputStream) url.getContent();
            d = Drawable.createFromStream(is, "src");
            return d;
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }

    protected void onPostExecute(Drawable result) {
        setImage(result);
    }

}

问题是,非常随机,但大约10次中有8次,我在我的日志中收到以下消息"10-25 14:58:18.764: DEBUG/skia(11294):-decoder>decode returned false",然后我的drawable为空。

我会说我的代码有问题,但为什么它有时会工作呢?还是不想?

我试着把WebViews放到我的图库中,只加载图片地址,下载图片的效果非常好,速度也快得令人惊叹,但随后显示就变得非常混乱(速度较慢,没有响应,图像没有居中显示……)。

我该怎么办?

我不明白为什么有时我的输入流不工作。只是有时候。如果足够努力(就像使用循环一样),它总是在几次尝试之后就能工作,但这确实是一个丑陋的解决方案。

有没有办法下载带有webviews的图片并在下载后获取它们?我尝试过类似的东西(在webview中使用getCache()或capturePicture() ),但它没有显示任何内容……

有什么想法吗?有什么想法吗?

非常感谢!

编辑:好吧..每次当我意识到inputStream的副本的时候它都能工作。但是为什么呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-04 09:36:51

这很可能是流位图处理中的另一个bug?存在一个未解决的问题(Issue 10627: Picture object not streaming out larger bitmaps),其中较大的位图没有写出到流中。而这可能只是问题的另一半。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4014807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档