๐ŸŽ iOS & Swift

[iOS] Type 'object' does not conform to protocol 'Decodable’ / ‘Encodable’

taeeekki 2022. 8. 20. 02:19

๋“ค์–ด๊ฐ€๋ฉฐ

UIImage๋Š” Decodable๊ณผ Encodable์„ ๋”ฐ๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•œ ๋งˆ๋””๋กœ UIImage๋Š” Codable ํ”„๋กœํ† ์ฝœ์„ ๋”ฐ๋ฅด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๊ตฌ์กฐ๋ฅผ ์งค ๋•Œ ์ฃผ์˜ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

struct SampleDataModel: Codable {
    let image: UIImage      // โ›”๏ธ ์—๋Ÿฌ ๋ฐœ์ƒํ•˜๋Š” ๋ถ€๋ถ„
    let title: String
    let contents: String
    let tag: [Int]
    let createdAt: String
}

 


 

ํ•ด๊ฒฐ

์ง€๊ธˆ์€ image ๋‹จ์ผ ๊ฐ์ฒด์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ์•„๋ž˜ 2๊ฐ€์ง€ ๋ฐฉ๋ฒ• ์ค‘ ์ ์ ˆํ•˜๊ฒŒ ํ•˜๋‚˜๋ฅผ ํƒํ•ด์„œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์˜ˆ์‹œ 1

struct SampleDataModel: Codable {
    let image: Data         // โœ… ์•„์˜ˆ Data๋กœ ๋ฐ›๊ธฐ
    let title: String
    let contents: String
    let tag: [Int]
    let createdAt: String
}

์˜ˆ์‹œ 2

struct SampleDataModel: Codable {
    let imageURL: String    // โœ… ์ด๋ฏธ์ง€์˜ url๋กœ ๋ฐ›๊ธฐ
    let title: String
    let contents: String
    let tag: [Int]
    let createdAt: String
}

 


 

๋ ˆํผ๋Ÿฐ์Šค

https://velog.io/@sainkr/TIL-2021.02.05

https://iosdeveloperfromscratch.tistory.com/14