UITableViewController

Panther·2021년 8월 20일
0

https://developer.apple.com/documentation/uikit/uitableviewcontroller

"A view controller that specializes in managing a table view."

테이블 뷰 관리에 특화된 뷰 컨트롤러입니다.

Declaration

@MainActor class UITableViewController : UIViewController

Overview

인터페이스가 테이블 뷰를 구성하고 있고 다른 컨텐트가 적거나 없을 때 UITableViewController를 서브클래싱하시기 바랍니다. 테이블 뷰 컨트롤러는 이미 테이블 뷰 컨텐트 관리 및 변경사항 응답에 필요한 프로토콜을 채택하고 있습니다. UITableViewController는 아래 동작을 구현하고 있습니다..

  • 스토리보드 혹은 nib 파일에 아카이브된 테이블 뷰를 자동으로 로드합니다. tableView 속성을 사용해서 테이블 뷰에 접근할 수 있습니다.
  • 테이블 뷰의 데이터 소스와 딜리게이트를 자신으로 설정합니다.
  • viewWillAppear(_:) 메소드를 구현하고 첫 번째 모습에서 테이블 뷰에 대한 데이터를 자동으로 다시 로드합니다. 테이블 뷰가 표시될 때마다 선택(애니메이션이 존재 여부는 상관없이 요청에 의존하는)을 지웁니다. clearsSelectionOnViewWillAppear` 속성에서 값을 변경시켜 이 동작을 비활성화할 수 있습니다.
  • viewDidAppear(_:) 메소드를 구현하고, 처음으로 나타날 때 자동으로 테이블 뷰의 스크롤 인티케이터가 깜빡입니다.
  • setEditing(_:animated:) 메소드를 구현하고, 사용자가 네비게이션 바에서 편집/완료 버튼을 탭할 때 자동으로 테이블의 편집 모드를 토글합니다.
  • 스크린 키보드의 나타남 혹은 사라짐을 수용하기 위해 테이블 크기를 자동으로 조정합니다.

관리하는 각각의 테이블 뷰에 UITableViewController의 커스텀 서브클래스를 새엉할 수 있습니다. 테이블 뷰 컨트롤러를 초기화할 때 테이블 뷰의 스타일(plain 혹은 grouped)을 구체화 해야 합니다. 데이터로 테이블을 채우기 위해 필요한 데이터 소스 및 딜리게이트 메소드 또한 오버라이드 해야 합니다. loadView() 혹은 다른 슈퍼클래스 메소드를 오버라이드 할 수도 있습니다. 만약 그렇게 하는 경우 메소드의 슈퍼클래스 구현 호출을 확실히 해야 하며, 보통 첫 번째 메소드 호출로 합니다.

See Also


Content View Controllers

Displaying and Managing Views with a View Controller

스토리보드에 뷰 컨트롤러를 빌드하고, 커스텀 뷰와 함께 설정하며, 앱 데이터로 해당 뷰를 채웁니다.

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

Showing and Hiding View Controllers

다른 테크닉을 사용해서 뷰 컨트롤러를 표시합니다. 그리고 뷰 컨트롤러 사이에 전환이 진행되는 동안 데이터를 전달합니다.

https://developer.apple.com/documentation/uikit/view_controllers/showing_and_hiding_view_controllers
https://velog.io/@panther222128/Showing-and-Hiding-View-Controllers

UIViewController

UIKit 앱의 뷰 계층구조를 관리하는 객체입니다.

https://developer.apple.com/documentation/uikit/uiviewcontroller
https://velog.io/@panther222128/ViewController

UICollectionViewController

컬렉션 뷰 관리에 특화된 뷰 컨트롤러입니다.

https://developer.apple.com/documentation/uikit/uicollectionviewcontroller
https://velog.io/@panther222128/UICollectionViewController


0개의 댓글