簡體   English   中英

如何知道圖像是來自SDWebImage中的緩存還是表單URL?

[英]How know whether image is coming from cache or form url in SDWebImage?

我正在使用SDWebImage來加載圖像列表,這非常好,但是下次加載圖像時,如果網址是相同的,則從緩存加載圖像。 但我需要知道它即將到來的表格緩存或網絡。 任何幫助將不勝感激。

檢查SDWebImageManager,它有2個版本的函數來檢查URL是否已經被緩存:

- (BOOL)diskImageExistsForURL:(NSURL *)url;

還有一個帶有塊的版本,它在檢查后執行。 希望這可以幫助!

您可以檢查緩存以查看相關圖像是否已經下載,如下所示:

NSString *key = [[SDWebImageManager sharedManager] cacheKeyForURL:URL];
UIImage *image = [[SDImageCache sharedImageCache] imageFromDiskCacheForKey:key];

使用你的網址

SDWebImageManager *manager = [SDWebImageManager sharedManager];
UIImage *cachedImage = [manager imageWithURL:url];

if (cachedImage) 
{
   [button setImage:cachedImage];
   //image is cashed
}
else 
{
   [manager downloadWithURL:url delegate:self];
}

然后實現委托功能

- (void)webImageManager:(SDWebImageManager *)imageManager didFinishWithImage:(UIImage*)image {
   [button setImage:image];
   // new image
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM