0
如何使用文件名將圖像緩存到緩存文件夾中。我有一個集合視圖從互聯網加載圖片網址。所以我想緩存圖像的文件名稱作爲URL在Caches文件夾中。預先感謝如何將圖像緩存到帶有文件名的文檔文件夾
如何使用文件名將圖像緩存到緩存文件夾中。我有一個集合視圖從互聯網加載圖片網址。所以我想緩存圖像的文件名稱作爲URL在Caches文件夾中。預先感謝如何將圖像緩存到帶有文件名的文檔文件夾
下載圖像,並把它保存在緩存文件夾非常簡單:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{
NSString *urlString = @"http://URL";
NSData *webData= [NSData dataWithContentsOfURL:[NSURL URLWithString:urlString]];
if (webData) {
// save in the Filesystem
NSString* cachesDirectory = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *file = [cachesDirectory stringByAppendingPathComponent:[urlString lastPathComponent]];
[webData writeToFile:file atomically:YES];
}
});
但是當你顯示圖像IOS使用懶惰圖像解壓縮,產生在主線程上的延遲。爲了避免這些延誤有很大的圖書館:
我會建議你使用其中的一個。
我會強烈推薦SDWebImage。這是最好的。 –
您可以使用圖像URL的SHA-1哈希來創建文件名(您可能希望強制URL的所有字符作爲過程的一部分小寫)。無論URL如何,這總是會創建一個有效的文件名。 – trojanfoe