0
我正在使用Picasso用於圖像下載並在imageView中顯示它的庫。該庫還將圖像存儲在緩存和內存中。當我的互聯網打開時,我能夠在imageView上查看圖像。所以我認爲,它也應該存儲在緩存或文件內存中。現在我的網絡正在關閉,但它不會顯示圖像。請好好看看。使用Picasso Library無法從緩存中顯示圖像
Picasso.with(context)
.load(url) .placeholder(R.drawable.defaultimg)
.networkPolicy(NetworkPolicy.OFFLINE)
.into(holder.imageview2, new ImageLoadedCallback(holder.loadingBar) {
@Override
public void onSuccess() {
if (holder.loadingBar != null) {
holder.loadingBar.setVisibility(View.GONE);
}
}
@Override
public void onError(){
holder.loadingBar.setVisibility(View.VISIBLE);
Picasso.with(context)
.load(url) .placeholder(R.drawable.defaultimg)
.into(holder.imageview2, new ImageLoadedCallback(holder.loadingBar) {
@Override
public void onSuccess() {
if (holder.loadingBar != null) {
holder.loadingBar.setVisibility(View.GONE);
}
}
@Override
public void onError() {
if (holder.loadingBar != null) {
holder.loadingBar.setVisibility(View.GONE);
}
}
});
}
});
當您的互聯網** OFF **時,無論圖像是否被緩存,源代碼都會被更正爲該庫,所以它會拋出異常並且不顯示緩存的圖像。在互聯網關閉時下載圖像並提供本地路徑,或者在沒有互聯網的情況下提供適當的佔位符圖像。 –
@MohammedAtif我不認爲是這樣。 [傑克在這裏的畢加索問題跟蹤器中解決了這個問題。](https://github.com/square/picasso/issues/698#issuecomment-58745858) –
@Mohammed Atif我的應用程序使用畢加索緩存圖像,甚至顯示他們當互聯網關閉時。 –