如何从远程源(url)获取图像并在ImageView中显示?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从远程源(url)获取图像并在ImageView中显示?相关的知识,希望对你有一定的参考价值。

我正在构建一个android Things“kiosk”风格的应用程序,我希望图像在背景中像壁纸一样显示。我正在使用Unsplash Source来获取随机图像,但源URL(https://source.unsplash.com/1080x1920/?long-exposure)总是重定向到图像URL,所以我不能使用它:

InputStream is = (InputStream) new URL("https://source.unsplash.com/1080x1920/?long-exposure").getContent();
Drawable d = Drawable.createFromStream(is, "");
niceWallpaper.setImageDrawable(d);

有没有办法做到这一点?

答案

使用Picasso可以解决您的问题。

String yourUrl = "https://source.unsplash.com/1080x1920/?long-exposure";
Picasso.with(MyApplication.getAppContext()).load(yourUrl).placeholder(defaultImage).memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE).into(YourImageView);
另一答案

使用Picasso

Picasso.get().load("https://source.unsplash.com/1080x1920/?long-exposure")
                            .into(imageView);

以上是关于如何从远程源(url)获取图像并在ImageView中显示?的主要内容,如果未能解决你的问题,请参考以下文章

Python:从 URL 获取图像尺寸

从服务器获取多个 url 图像并在 iphone 的滚动视图中显示

从 url 获取远程图像的宽度高度

如何使用 Rails 主动存储从 url 保存图像?

如何从 SDWebImage 获取图像大小?

如何将图像存储在文件服务器中并获取远程 URL 以响应本机应用程序