# reloadData

UICollectionViewDataSource의 비동기 reload 에러 해결에 대하여...
프로젝트를 진행하면서 DiffableDataSource를 사용하기 이전에 기본적인 UICollectionViewDataSource를 좀 더 잘 사용해보자는 의미에서 시작했지만 생각보다 많은 걸 얻어가는 것 같아서 기록으로 남기려합니다. 해당 내용에서 생각보다 많은 무겁다면 무겁고 가볍다면 가벼운 주제로 기록하기에 조금은 가볍게 넘어가며 에러를 해결하며 많은 자료를 찾아보았지만 무엇하나 원하는 답이 없었고.. 도움이 되었으면 좋겠습니다 🙇🏻 그럼 시작해보겠습니다. 코드가 이쁘지 않지만 해결에 중점을 두고 작성하였습니다. 배경 설명 홈 화면을 구성하는 섹션에는 메인, 수프, 밑반찬 순으로 총 3개의 섹션이 있습니다. 해당 섹션에는 필요한 동일한 엔티티 타입인 Food라는 구조체를 사용합니다. 사용한 패턴 Observer 패턴 MVVM 비동기: async-await 네트워크에 대한 내용은 생략하였습니다. |메인|수프|밑반찬|

June 8, 2021, TIL (Today I Learned) - 네트워크를 통해 받아온 데이터만큼 cell의 갯수 구현하기
학습내용 네트워크를 통해 받아온 데이터만큼 cell의 갯수 구현하기 Swift를 공부하면서 네트워크 작업을 해야 하는 경우가 많습니다. 그럴 경우 아래와 같이 urlSession 또는 alamofire를 많이들 활용합니다. 제가 진행했던 프로젝트에서는 오픈마켓의 API를 통해 상품 목록의 데이터를 가져와서 cell에 구현해 줘야 했습니다. 그래서 위와 같이 NetworkManager라는 클래스를 통해 비동기적으로 네트워크 작업을 했습니다. 해당 작업을 cell에 적용시키는 방법은 비교적 간단합니다. 적용하고자하는 ViewController에 networkManager의 인스턴스를 생성한 뒤 UICollectionViewDataSource 를 채택한 뒤 cellForItemAtIndexPath메서드에서 직접 네트워크 작업을할 수 있습니다. 하지만 위와 같은 방법은 좋지 못한 방법이라고 생각합니다. 첫 번째 이유는 `cell

210617 Thu
학습 내용 [x] 컬렉션뷰 UI 다시 바로 잡기 ^.ㅠ (스택뷰 적용?!) [x] 컬렉션뷰에도 데이타 불러오는거 마저 코드 적용하기 (커밋 해두기) [x] 처음 목록을 로드할 때, 사용자에게 빈 화면만 보여주는 대신, 로드 중임 보여주기 ⭐️ → indicator 객체 띄워주면 된다고 함 !!! by 키오센세 1. 첫 번째 학습 내용: self.tableView.reloadData() **Instance Method reloadData()** Reloads the rows and sections of the table view. Discussion Call this method to reload all the data that is used to construct the table, i
[iOS] UITableView에서 estimatedRowHeight를 사용. reloadData하면 위치가 어긋날 때 해결방법
UITableView의 아이템들의 높이가 다를 때 reloadData하면 스크롤 위치가 엉뚱한 곳으로 점프한다. 검색 해 보면 스크롤 위치를 저장, 복원하는 별의별 방법이 있는데 다 필요없고 이럴 때는 미리 계산된 셀들의 높이를 저장해 두고 복원하는 방법이 가장 간단한 듯 하다. 엄청난 삽질을 했기 때문에 기록 해 둔다.