2022.05.07 - [iOS/App] - 박스오피스 앱 만들기(3)
이번엔 추가적으로, 언제 앱을 실행하더라도 전날의 박스오피스 데이터를 읽을 수 있는 코드를 추가하겠습니다.
- 만약 JSON 데이터를 받아오는 URL의 마지막 부분인 날짜 부분이 작년의 날짜로 되어있다면
- 다음과 같이 해당 날짜의 박스오피스만 볼 수 있습니다, 그렇다면 이 앱은 그 누구도 사용하지 않겠죠?
- 박스오피스가 매일 최신화되는 앱으로 수정하기 위해 먼저 URL의 날짜 부분을 지워주겠습니다.
- 그리고 어제의 날짜를 읽어오는 코드를 작성하겠습니다.
- 34번째 줄은 x라는 변수를 생성하여 초기날짜(달력)을 세팅하는 Calendar 함수로 초기화했습니다.
byAdding에서는 .day로 날짜를 설정해주고, 박스오피스는 전날 집계된 데이터를 써야 하므로 Value는 -1로 처리했으며, 당일 날짜를 받아오는 Date() 함수로 보내주도록 처리했습니다.
- 35번째 줄은 formatter라는 변술를 생성하고, 날짜를 텍스트 형식(String)으로 변환하는 DateFormatter함수로 초기화했습니다. 36번째 줄은 formatter 변수에 "yyyyDDmm"으로 "년, 월, 일"의 형식으로 저장되게 지정했습니다.
- 그렇게 텍스트 값으로 변환한 formatter변수의 값을 x변수로부터 당일에서 하루를 뺀 날짜로 저장하여 day라는 변수에 저장합니다. 그리고 저장된 day의 값을 리턴합니다.
- 뷰의 컨트롤러가 메모리에 로드되고 난 후에 호출되는 viewDidLoad()메서드에,
movieURL 뒤에 날짜가 붙게끔 movieURL += makeYesterdayString()을 작성해줍니다.
※ 이때, 반드시 getData() 함수 전에 makeYesterdayString() 메서드를 호출해야 합니다.
실행화면
- 그리고 실행을 해보면, 오류 없이 원하는 데이터가 출력됩니다. :)
'iOS > App' 카테고리의 다른 글
박스오피스 앱 만들기(3) (0) | 2022.05.07 |
---|---|
박스오피스 앱 만들기(2) (0) | 2022.05.06 |
박스오피스 앱 만들기(1) (0) | 2022.05.05 |
Collection View (0) | 2022.04.16 |
Realm이란? (이론) (0) | 2022.04.02 |
댓글