본문 바로가기

카테고리 없음

iOS 10주차

 

영화 진흥위원회 API

 

 

필수 메소드를 사용하지 않아 발생하는 오류 (Xcode)에서 고쳐준다

 

 

table.delfegate = self <- (시험에 나옴 ~!~!~!~!~!~!~!)

myCell을 추가 하기

나의 Constaints

 

 

indexPatch.descrpition

 

 

이것은 row

 

 

 

 

import Foundation

// 1. 1단계: 박스 오피스 리스트 내 각각의 영화 데이터
struct MovieData: Codable {
    let rnum: String
    let rank: String
    let rankInten: String
    let rankOldAndNew: String
    let movieCd: String
    let movieNm: String
    let openDt: String
    let salesAmt: String
    let salesShare: String
    let salesInten: String
    let salesChange: String
    let salesAcc: String
    let audiCnt: String
    let audiInten: String
    let audiChange: String
    let audiAcc: String
    let scrnCnt: String
    let showCnt: String
}

// 2. 2단계: 박스오피스 결과(영화 리스트를 포함)
struct BoxOfficeResult: Codable {
    let boxofficeType: String
    let showRange: String
    let dailyBoxOfficeList: [MovieData]
}

// 3. 3단계: 전체 JSON의 최상위
struct MovieAPIResponse: Codable {
    let boxOfficeResult: BoxOfficeResult
}


// 예시 데이터 (String -> Data)
let jsonData: Data = ... // API에서 받아온 데이터

do {
    let result = try JSONDecoder().decode(MovieAPIResponse.self, from: jsonData)
    let movieList = result.boxOfficeResult.dailyBoxOfficeList
    // 이제 [MovieData] 배열로 영화 데이터를 쉽게 사용할 수 있어요!
    for movie in movieList {
        print("\(movie.rank)위 : \(movie.movieNm) (\(movie.openDt))")
    }
} catch {
    print("파싱 실패: \(error)")
}