«Фотография» не соответствует протоколу Encodable / Decodable, потому что UIImage не может соответствовать Codable. Также CLLocationCoordinate2D
не может соответствовать Codable. Вы можете указать var image
с типом Data
и затем получить UIImage от Data
.
Примерно так:
struct Photo: Codable {
var imageData: Data
let caption: String?
let location: String?
func getImage(from data: Data) -> UIImage? {
return UIImage(data: data)
}
}
private enum CodingKeys: String, CodingKey {
case imageData = "image"
case caption = "caption"
case location = "location"
}