23 lines
795 B
Swift
23 lines
795 B
Swift
import UIKit
|
||
|
||
// Менеджер для кеширования изображений в памяти
|
||
class ImageCacheManager {
|
||
static let shared = ImageCacheManager()
|
||
|
||
// NSCache будет хранить UIImage по ключу NSString (URL)
|
||
// Он автоматически удаляет объекты при нехватке памяти
|
||
private let cache = NSCache<NSString, UIImage>()
|
||
|
||
private init() {}
|
||
|
||
// Добавить изображение в кеш
|
||
func set(_ image: UIImage, forKey key: String) {
|
||
cache.setObject(image, forKey: key as NSString)
|
||
}
|
||
|
||
// Получить изображение из кеша
|
||
func get(forKey key: String) -> UIImage? {
|
||
return cache.object(forKey: key as NSString)
|
||
}
|
||
}
|