2015-05-06 36 views
10

我想使用picasso將圖像從url加載到佔位符中,但不會將該圖像存儲在緩存中 - 換句話說,我希望圖像被下載從網絡直接到磁盤,然後在需要時從磁盤加載。我知道有一個名爲RequestCreator的類,您可以在其中指定內存策略 - 是否有人使用picasso/requestcreator來執行此類操作?Android - 使用picasso加載圖像而不將其存儲在緩存中

所以..是這樣的:

RequestCreator requestCreator = new RequestCreator(); 
requestCreator.memoryPolicy(MemoryPolicy.NO_CACHE); 
.... 

合併:

Picasso.with(context).load(someurl).fit().placeholder(someplaceholder).into(sometarget).. 

回答

26

畢加索支持這個由它在畢加索建設者skipMemoryCache()。一個例子如下所示。

Picasso.with(context).load(imageUrl) 
       .error(R.drawable.error) 
       .placeholder(R.drawable.placeholder) 
       .skipMemoryCache() 
       .into(imageView); 

有了這樣它會跳過尋找它並將其存儲在緩存中,你應該使用這樣的新API:

Picasso.with(context).load(imageUrl) 
      .error(R.drawable.error) 
      .placeholder(R.drawable.placeholder) 
      .memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE) 
      .into(imageView); 

NO_CACHE

跳過內存緩存查找時處理請求。

NO_STORE

跳過存儲最後的結果到存儲器中的高速緩存。用於一次性請求以避免從緩存中清除其他位圖。

+0

我們怎樣才能利用畢加索緩存圖像asfter使用No_Store – EthicsDev

+0

這完全是另外一個問題,你應該嘗試尋找它,如果你不能找到一個問題,然後要求它 – MrEngineer13

+0

謝謝,它做工精細。 – Harshadcse

相關問題