Android:从 URL 获取 Drawable 不适用于 .jpg,仅适用于 .png

发布于 2024-10-06 18:12:21 字数 475 浏览 8 评论 0原文

我正在开发一个 Android 应用程序,它可以从互联网页面(特别是 xckd.com)中提取图片。我使用这种基本形式的代码可以很好地工作(见下文),

ImageView iv = new ImageView;
    URL url = new URL(address);
    InputStream content = (InputStream)url.getContent();
    Drawable d = Drawable.createFromStream(content , "src"); 
    iv.setImageDrawable(d)

我注意到当我查看他们的一些旧漫画时,图像不会显示(但我正确地从页面中抓取了其他信息,所以我知道网址是正确的)。我确定只有当图像是 .jpg 文件时才会出现此结果,但当图像是 .png 文件时效果很好。

我在 Google 上搜索了很多,但我不明白为什么会这样,有一个简单的修复方法吗?

I am working on and Android app that pulls a picture from an internet page (specifically xckd.com). I have it working wonderfully using code of this basic form (see below)

ImageView iv = new ImageView;
    URL url = new URL(address);
    InputStream content = (InputStream)url.getContent();
    Drawable d = Drawable.createFromStream(content , "src"); 
    iv.setImageDrawable(d)

I noticed when I was viewing some of their older comics the image would not show (but I was scraping the other information from the page properly so I know the url is correct). I determined that this result only occurs when the image is a .jpg file but works perfectly when it is a .png

I have Googled around plenty and I can't figure out why this is, is there a simple fix for this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

回眸一遍 2024-10-13 18:12:21

这是一个已知问题 http://code.google.com/p/android /issues/detail?id=6066。使用 FlushedInputStream 可以解决这个问题。

It's a known issue http://code.google.com/p/android/issues/detail?id=6066. Using FlushedInputStream solves it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文