android – 使用Picasso和OkHttp更新/更改缓存的位图

前端之家收集整理的这篇文章主要介绍了android – 使用Picasso和OkHttp更新/更改缓存的位图前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在使用Picasso和OkHttp进行位图缓存.我想要做的是检索一个特定的缓存位图,在其上绘制,然后将绘制在位图上的内容放回到内存和磁盘缓存中.我的实现非常标准,我只是使用Target并将加载的位图添加到驻留在GridView中的自定义 ImageView.我一直在环顾四周,似乎无法找到办法.这些库甚至支持这样的东西吗?

解决方法

Picasso只是用于下载缓存和显示图像的库(具有转换,交叉渐变等特权),不用于编辑.你似乎做的似乎超出了毕加索的使用范围.

我想你仍然可以使用Picasso来下载图像,但是当你得到一个Bitmap时,你的应用程序就会存储它的修改版本.因此,当用户完成绘制时,您必须自己将其本地存储到文件中(如果它是一个大图像,您也可以为GridView创建单独的较小缩略图)并使用此版本.要将更改的位图内容保存到可以调用文件

outBitmap.compress(Bitmap.CompressFormat.PNG,100,outStream);

您也可以使用Picasso将本地文件加载到GridView中:Picasso.with(context).load(“fileUrl”).into(mImageView);.因此,在您的代码中,您将检查是否具有本地编辑版本并使用Picasso从本地文件加载它,或者使用Picasso从服务器加载它.

如果要在服务器上保存图像,可以在用户编辑后将其发送到服务器.然后Picasso OkHttp将再次下载它(假设您更新了像服务器上的ETag一样的http缓存属性).

猜你在找的Android相关文章