2023. 1. 3. 22:21ㆍiOS
흔히들 테이블뷰나 컬렉션 뷰를 사용할때에 셀을 클릭시 셀안으로 들어가기 위해 didSelectRowAt 메소드를 사용합니다.
이 메소르를 사용하면서 한가지 주의 해야 할 점을 알아가보자 합니다.
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let vc = ViewController()
navigationController?.pushViewController(vc, animated: true)
}
흔히 사용 하는 didSelectRowAt 메소드입니다.
여기서 저는 추가적으로 셀 안에 뷰를 들어가기 위해서 메소드를 사용하며 셀안의 뷰를 불러 옵니다.
여기서 실수가 발생할 수 있다는 점을 알아보고자 합니다.
tableView.dataSource = self
tableView.delegate = self
didSelectRowAt 의 메소드를 사용하기 위해서는 일반적으로
dataSource 만을 불러오면 메소드를 불러오기 및 사용이 가능합니다.
허나 여기서 delegate를 놓칠 경우 didSelectRowAt 메소드가 실행이 되지 않습니다.!!
물론 대부분이 dataSource 와 delegate 은 한몸이기에 항상 같이 써서 이를 놓치는 경우는 잘 일어나지 않습니다.
가끔 급하게?하거나.. 데이터소스면 되지.. 델리게이트까지 필요없다고 생각하여 델리게이트를 빠트린다면 didSelectRowAt 의 메소드가 실행 되지 않는다는점 알아주시면 좋을꺼같습니다.!!
'iOS' 카테고리의 다른 글
RxSwift에 대해 알아보기! (Observable) (0) | 2023.01.11 |
---|---|
외부 라이브러리 (Cocoa Pods 추가하기) (0) | 2023.01.10 |
UIRefreshControl에 대해 알아보기(로딩 인디케이터) (0) | 2023.01.02 |
델리게이트 패턴에 대해서 알아보자!. (0) | 2022.11.20 |
IntrinsicContentSize 에 대해서 알아보기 (2) | 2022.11.20 |