我想使用picasso将图像从url加载到占位符中,但不将该图像存储在缓存中 - 换句话说,我希望将图像从网络直接下载到磁盘,然后在需要时从磁盘加载.我知道有一个名为RequestCreator的类,你可以在其中指定内存策略 - 有没有人有一个使用picasso/requestcreator做这样的事情的例子?
所以...类似于:
RequestCreator requestCreator = new RequestCreator();
requestCreator.memoryPolicy(MemoryPolicy.NO_CACHE);
....
Run Code Online (Sandbox Code Playgroud)
合并:
Picasso.with(context).load(someurl).fit().placeholder(someplaceholder).into(sometarget)..
Run Code Online (Sandbox Code Playgroud)
MrE*_*r13 56
毕加索skipMemoryCache()在毕加索建造者中支持这一点.一个例子如下所示.
Picasso.with(context).load(imageUrl)
.error(R.drawable.error)
.placeholder(R.drawable.placeholder)
.skipMemoryCache()
.into(imageView);
Run Code Online (Sandbox Code Playgroud)
使用新API,您应该像这样使用它,以便它跳过查找它并将其存储在缓存中:
Picasso.with(context).load(imageUrl)
.error(R.drawable.error)
.placeholder(R.drawable.placeholder)
.memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE)
.into(imageView);
Run Code Online (Sandbox Code Playgroud)
NO_CACHE
处理请求时跳过内存缓存查找.
NO_STORE
跳过将最终结果存储到内存缓存中.对于一次性请求很有用,可以避免从缓存中驱逐其他位图.
对于picasso:2.71828或以上版本使用以下跳过使用磁盘缓存networkPolicy(NetworkPolicy.NO_CACHE) :
Picasso.get()
.load(camera_url)
.placeholder(R.drawable.loader2)
.networkPolicy(NetworkPolicy.NO_CACHE, NetworkPolicy.NO_STORE)
.into(img_cam_view);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16019 次 |
| 最近记录: |