적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

카테고리 없음

iOS 18 크래시 이슈 (UICollectionView Cell 세팅 문제)

hongssup_ 2024. 10. 16. 15:05
반응형

collectionView cellForItemAt 에서 cell 세팅을 해주는데, 

해당 Cell 내에서 numberOfRowsInSection 세팅 해줄 때 크래시가 나는 문제가 발생했다!! 

 

 

iOS 18에서는 무조건 크래시 나고 그 이하 버전들은 갠춘.

 

로그 확인해보니 cellForItemAt 메서드는 호출이 잘 되는데, 그 안에서 cell 세팅하고 binding 해주는 부분이 

cell 내에서 numberOfRowsInSection 호출해주는 부분보다 늦게 호출이 되더라. 

binding으로 viewModel 을 넣어주기 전에 data setting 메서드가 먼저 호출되어서 viewModel 이 없어 크래시가 나는 것..!

오잉??? 도대체 갑자기 왜?? 

 

 

요기서 viewModel 이 없다고 크래시가 나는 것이다!! 

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return viewModel.stories.count
}

 

일단 크래시가 나는 건 크리티컬 하기 때문에 급하게 수정해서 심사를 올렸다. 

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return if let viewModel {
        viewModel.stories.count
    } else {
        0
    }
}

 

 

 

Xcode 업데이트 문제인지 iOS 18 문제인지 Swift 6 문제인지 아직 원인은 잘 모르겠지만

728x90
반응형