【发布时间】:2021-02-09 16:40:08
【问题描述】:
是否可以在 Swift 中将 UIImage 类型的数据保存到 UserDefaults 中? 如果有可能,那么它是如何工作的??
提前谢谢你
【问题讨论】:
是否可以在 Swift 中将 UIImage 类型的数据保存到 UserDefaults 中? 如果有可能,那么它是如何工作的??
提前谢谢你
【问题讨论】:
技术上可行,但不可取。将图像保存到 而是磁盘。 NSUserDefaults 适用于小设置,而不是大设置 二进制数据文件。
import UIKit
// Load Image
let image = UIImage(named: "landscape")
// Convert to Data
if let data = image?.pngData() {
// Create URL
let documents = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
let url = documents.appendingPathComponent("landscape.png")
do {
// Write to Disk
try data.write(to: url)
// Store URL in User Defaults
UserDefaults.standard.set(url, forKey: "background")
} catch {
print("Unable to Write Data to Disk (\(error))")
}
}
【讨论】: