🔥다운 캐스팅(Down Casting)
🔥업 캐스팅(Down Casting)
func tableSetting() {
mainView.tableView.register(MainTableViewCell.self, forCellReuseIdentifier: MainTableViewCell.identifier)
mainView.tableView.delegate = self
mainView.tableView.dataSource = self
}
...
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: MainTableViewCell.identifier, for: indexPath) as! MainTableViewCell
...
}
테이블 뷰 등록(register)에서는 타입캐스팅이 필요없지만,
셀 프로퍼티 선언(dequeue)에서는 필요하다 그 이유는?
다운 캐스팅을 하는 이유에 대해서 생각을 해보면 답이 나온다
위에서 설명한 바와 같이
🔥다운 캐스팅(Down Casting)
등록과정(register) 메서드에서는 해당 클래스의 프로퍼티와 메서드를 사용하지 않고
디큐를 활용하는 시점인 cellForRowAt에서는 만들어놓은 커스텀셀의 프로퍼티와 메서드를 활용해야되기 때문이다.
커스텀셀을 활용하는 것이 아니라면 캐스팅은 필요없습니다.
[iOS/Swift] 옵셔널?!(Optional) (0) | 2022.11.05 |
---|---|
[App Store] 날짜관련 앱에서 충돌이 난다면..? (1) | 2022.10.11 |
[iOS/Swift ] for ~ in VS forEach (0) | 2022.10.11 |
[Swift] 다른 파일의 메서드 호출하기 (0) | 2022.08.13 |
[iOS] Rest_API (0) | 2022.08.10 |