2017-01-02 45 views
0

我使用毕加索的图片浏览器,它可以旋转图像。 问题是,当我旋转图像,并尝试在查看器中更新它,它不会更新,直到我“销毁”应用程序或使用内存策略 - .memoryPolicy(MemoryPolicy.NO_CACHE)。我试图在没有缓存的情况下使用应用程序,但速度很慢,所以它不是解决方案。如何清理毕加索的内存缓存?

因此,我正在寻找清理内存和更新视图的方式。我不能使用参数.rotate(90f),因为毕加索自己处理正确的旋转,直到内存清理完毕才会工作。

此问题不是文件缓存问题,它是内存缓存问题(基于我对内存缓存设置的测试)。我也试图确认文件缓存无效,但它并没有像我期望的那样有帮助。

Picasso.with(context).invalidate(filePath); 

Picasso 
.with(context) 
.load(filePath) 
.into(imageView); 

回答

0

乌夫,我终于找到了。在使用Glide之前,它有参数签名。毕加索有类似的东西叫stableKey。当我使用这个,我不必关心缓存,我只是启用它,毕加索处理休息。

Picasso 
.with(context) 
.load(filePath) 
.stableKey(uniqueFileAttribute) 
.into(imageView);