【问题标题】:How do I use Picasso Image Caching?如何使用毕加索图像缓存?
【发布时间】:2015-10-16 13:01:00
【问题描述】:

我需要访问在使用毕加索转换(或裁剪)后缓存的图像。

我正在做的是获取一个大图像资源,在运行时从中裁剪出屏幕大小的一块,并将其设置为RelativeLayout 的背景。到目前为止,我已经使用毕加索成功地做到了这一点。

稍后在应用程序中,我通过调用更改应用程序布局:

    setContentView(R.layout.OTHER_LAYOUT);     

然后我想访问 Picasso 存储图像裁剪版本的缓存,并将OTHER_LAYOUT 的背景动态设置为存储的裁剪图像版本。

This S.O. post 似乎与访问毕加索在设备上缓存的位图有关。

我正在考虑尝试这个解决方案。但是一位用户的评论(对已接受答案的评论)让我想知道是否有更好的方法。复杂的解决方案通常看起来更容易出错。

“它似乎可以工作。但在我看来,它不是很好。文件被保存在某个地方。lib 应该将它们提供给开发人员。与其向 picasso lib 添加数百万个功能会更好,添加非常简单和基本功能。因此我放弃了使用毕加索。它有数百万个垃圾功能和非常有限的好功能。

毕加索是否允许我访问已转换和缓存的图像,并在其他地方使用它(以简单易用的方式)?

如果没有,另一个图书馆会给我更大的便利吗?

【问题讨论】:

    标签: android image android-layout caching picasso


    【解决方案1】:

    不要过多考虑重用缓存图像,毕加索在这方面非常擅长,并且针对它进行了很好的优化。只需加载相同的 URL / drawable 并应用转换。如果 Picasso 已经缓存了,会非常快,你可以在 Picasso 实例上查看setIndicatorsEnabled(true) 是否缓存了它。

    【讨论】:

    • 我正在从应用程序资源加载图像,然后对其进行转换。不下载它。转换后的缓存图像如何访问不同的 RelativeLayout ?
    • 您需要重新加载它,如果存在,毕加索将从缓存中取出。之后,您需要再次应用转换。 Picasso 只缓存原始图像。
    猜你喜欢
    • 2014-04-10
    • 2021-02-21
    • 2018-07-28
    • 2015-05-07
    • 2017-10-14
    • 2013-08-31
    • 2019-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多