반응형
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
반응형