У меня есть словарь offlineImages = [String: UIImage]()
, и я хочу сохранить его в CoreData/UserDefaults. Как я могу это сделать и что является лучшим выбором?Как хранить словарь типа [String: UIImage] в CoreData/UserDefaults?
Пробовал с помощью файловой системы, но изображения не будут показывать (offlineImages
массива содержит локальные URL-адрес для изображений):
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "offlineCell")
let mainImageView = cell?.viewWithTag(2) as! UIImageView
let mainImageURL = offlineImages[indexPath.row]
let mainImageData = NSData(contentsOf: mainImageURL)
let mainImage = UIImage(data: mainImageData! as Data)
mainImageView.image = mainImage
return cell!
}
Не , Запишите изображения в файловую систему. И никогда не записывайте столько данных в NSUserDefaults. Это предназначено для небольших бит данных. – rmaddy
@rmaddy, и как я могу хранить его в CoreData? – abcd
У вас нет. Запись изображений в файловую систему. Просто храните имена файлов в основных данных. – rmaddy