在通用图像加载器中缓存之前编辑图像

时间:2013-11-27 16:34:58

标签: android caching gridview editing universal-image-loader

有没有办法以某种方式编辑图像,例如在图像被缓存之前为图像添加水印?因此,每次View(我的情况下是GridView)刷新自己时,水印都不会在适配器的instantiateItem方法中反复添加,这会给整个过程增加延迟。

可选阅读: 我正忙着使用我的相机应用程序拍摄的照片(就像一个拼图游戏)。它们存储在SD卡上,但由于加扰,用户无法使用图库中的图片,并且他被迫使用我的应用程序,该应用程序在运行时对图像进行解扰并向用户显示正确的图像。这个过程让我可以为我的应用程序提供免费试用的模型,如果用户为应用付费,可以在室外使用这些图片。

问题是,除了图库的gridview之外,一切正常。发生的事情是每次使用长按(用于编辑等)选择图像时,gridview会刷新自身并重新加载所有图像,因此会再次解密,这会增加加载的延迟,并降低整体用户体验。有没有什么办法可以在缓存它们之前解密图像,这样就不会发生这种情况?

1 个答案:

答案 0 :(得分:2)

首先,您应该创建自己的BitmapProcessor实现。

如果要在保存到光盘缓存之前处理图像,请使用ImageLoaderConfiguration..discCacheExtraOptions(..., processor)。 在保存到磁盘上之前,将对每个图像执行处理。

如果要在保存到内存缓存之前处理图像,请使用DisplayImageOptions.preProcessor(processor)。 将对将使用此处理器获得选项的任务执行处理。