개발/iOS
RxSwift 테이블뷰 다시 바인드할 때 오류
빙수킹
2021. 7. 8. 00:36
문제상황
한 tableView 안에서 어떤 상태 flag 값에 따라 셀 class와 뿌려지는 내용(리스트)를 바꾸고 싶었다.
-> 다시 바인드를 했다.
-> 오류가 났음!
오류 내용
Maybe delegate was already set in xib or storyboard and now it's being overwritten in code.
해결방안
dataSource와 delegate를 초기화시킨 후 다시 bind해줘야 한다.
tableView.delegate = nil
tableView.dataSource = nil
수정 전 코드
수정 후 코드
중복으로 붙여넣었지만.. 아무튼 중요한건
bind를 다시 해주기 전, delegate와 dataSource에 nil을 넣어줘야 한다는 것이다.
출저
https://github.com/RxSwiftCommunity/RxDataSources/issues/185