이슈

collectionView의 높이를 고정한 상태에서 출연자의 정보를 제공할 때, 출연자 정보가 많으면 뷰를 스크롤을 해야 한다. 반대로 출연자의 정보가 존재하지 않을 경우에는 잉여 공간을 차지했다.

고민한 내용

collectionView의 크기가 모두 정해질 시점에 크기를 다시 그릴 수는 없을지에 대해 고민해 보았다.

collectionView.contentSize.height 를 viewDidLoad, ViewWillAppear, ViewDidAppear, CellForItemAt 등에서 출력을 해 보았다.

 

CellForItemAt 이후에 레이아웃이 잡혀야 했으며, ViewDidAppear에서보다는 빠른 시점을 찾아야 했다. (뷰의 크기가 변경되는 것이 가시적으로 보였다. 어느 시점에 View를 라사이징할지 고민을 하다가 블로그를 발견을 했다

viewWillLayoutSubViews이다. view 의 레이아웃이 결정되기 직전인 시점으로, 이때 collectionView.contentSize.height 를 리사이징을 하면 원하는 크기로 collectionView의 레이아웃이 결정되는 것을 발견할 수 있었다!

회고

그런데 아직은 Drawing Cycle을 정확하게 학습했다고는 이야기할 수 없는 상태라 이 부분에 대해 추후에 학습하고 포스팅을 하도록 하겠다 . . . 혹시 제가 잘못된 방법으로 접근을 했다면? 댓글 남겨 주시면 감사하겠습니다 📖

 

레이아웃 관련 메서드를 탐구한 블로그

https://insubkim.tistory.com/337

+ Recent posts