https://developer.apple.com/documentation/uikit/uicollectionviewcontroller
"A view controller that specializes in managing a collection view."
컬렉션 뷰 관리에 특화된 뷰 컨트롤러입니다.
@MainActor class UICollectionViewController : UIViewController
뷰 컨트롤러는 아래 동작을 구현합니다.
collectionView
속성을 사용해서 접근할 수 있는 새 설정되지 않은 컬렉션 뷰 객체를 생성합니다.clearsSelectionOnViewWillAppear
속성의 값을 false
로 설정해서 이 동작을 변경시킬 수 있습니다.다루길 원하는 각각의 컬렉션 뷰마다 UICollectionViewController
의 커스텀 서브클래스를 생성할 수 있습니다. init(collectionViewLayout:)
메소드를 사용해서 컨트롤러를 초기화할 때, 컬렉션 뷰가 가져야 하는 레이아웃을 구체화할 수 있습니다. 초기에 생성된 컬렉션 뷰는 차원 혹은 컨텐트를 갖지 않기 때문에 컬렉션 뷰의 데이터 소스와 딜리게이트(보통 컬렉션 뷰 컨트롤러 자신)는 이 정보를 제공해야 합니다.
loadView()
메소드를 오버라이드 하거나 다른 슈퍼 클래스 메소드를 오버라이드 할 수 있지만, 그렇게 하는 경우 메소드 구현에서 super
호출을 확실히 해줘야 합니다. 그렇게 하지 않는 경우 컬렉션 뷰 컨트롤러는 컬렉션 뷰의 통합을 유지하기 위해 필요한 모든 작업을 수행할 수 없습니다.
스토리보드에 뷰 컨트롤러를 빌드하고, 커스텀 뷰와 함께 설정하며, 앱 데이터로 해당 뷰를 채웁니다.
https://developer.apple.com/documentation/uikit/view_controllers/displaying_and_managing_views_with_a_view_controller
https://velog.io/@panther222128/Displaying-and-Managing-Views-with-a-View-Controller
다른 테크닉을 사용해서 뷰 컨트롤러를 표시합니다. 그리고 뷰 컨트롤러 사이에 전환이 진행되는 동안 데이터를 전달합니다.
https://developer.apple.com/documentation/uikit/view_controllers/showing_and_hiding_view_controllers
https://velog.io/@panther222128/Showing-and-Hiding-View-Controllers
UIKit 앱의 뷰 계층구조를 관리하는 객체입니다.
https://developer.apple.com/documentation/uikit/uiviewcontroller
https://velog.io/@panther222128/ViewController
테이블 뷰 관리에 특화된 뷰 컨트롤러입니다.
https://developer.apple.com/documentation/uikit/uitableviewcontroller
https://velog.io/@panther222128/UITableViewController