UITableViewController

YesCoach·2021년 7월 7일
0

UITableViewController

테이블뷰 관리를 전문으로 하는 뷰 컨트롤러

인터페이스가 테이블뷰로 구성되고 다른 요소는 거의 혹은 아예 없는 경우, UITableViewController를 서브클래스로 생성합니다. Table view controller table view의 컨텐츠를 관리하고 변경 사항에 대응하는 데 필요한 프로토콜을 이미 채택하고 있습니다.
UITableViewController는 다음과 같은 동작을 구현합니다.

  • 스토리보드 또는 니브 파일에 아카이브된 테이블뷰를 자동으로 로드합니다. tableView 프로퍼티을 사용하여 테이블뷰에 액세스합니다.

  • 데이터 소스데이터 델리게이트를 자동으로 설정합니다.

  • viewWillAppear(_:) 메서드를 구현하고, 처음 나타날 때 테이블뷰에 대한 데이터를 자동으로 다시 로드합니다. 테이블뷰가 표시될 때마다 선택 항목(요청에 따라 애니메이션 포함 또는 제외)을 지웁니다. clearSelectionOnViewWillAppear 프로퍼티 값을 변경하여 이 동작을 비활성화할 수 있습니다.

  • viewDidAppear(_:) 메서드를 구현하고 테이블뷰가 처음 나타날 때 자동으로 스크롤 표시기를 깜박입니다.

  • setEditing(_:animated:) 메서드을 구현하고 사용자가 Edit|Done 버튼을 누르면 테이블의 편집 모드를 자동으로 전환합니다.

  • 화면 키보드의 등장과 사라짐을 수용할 수 있도록 테이블뷰의 크기를 자동으로 조정합니다.

관리하는 각 테이블뷰에 대해 UITableViewController의 사용자 정의 서브클래스를 생성합니다. 테이블뷰 컨트롤러를 초기화할 때는 테이블뷰의 스타일(일반(plain) 또는 그룹화(grouped))을 지정해야 합니다. 또한 테이블을 데이터로 채우는 데 필요한 데이터 소스 및 데이터 델리게이트도 재정의해야 합니다. loadView() 나 다른 슈퍼클래스 메서드를 재정의할 수 있지만, 재정의할 경우 메소드의 슈퍼클래스 구현을 호출해야 합니다(일반적으로 첫 번째 메서드 호출).

Topics

Creating the Table View Controller

  • init(style: UITableView.Style)
    지정된 스타일의 테이블 뷰를 관리하도록 테이블뷰 컨트롤러를 초기화합니다.
  • init?(coder: NSCoder)
  • init(nibName: String?, bundle: Bundle?)

Getting the Table View

  • var tableView: UITableView!
    컨트롤러 객체에서 관리하는 테이블뷰를 반환합니다.

Configuring the Table Behavior

  • var clearSelectionOnViewWillAppear: Bool
    테이블이 나타날 때 컨트롤러가 선택 항목을 지울지 여부를 나타내는 부울 값입니다.

Refreshing the Table View

  • var refreshControl: UIRefreshControl?
    테이블 내용을 업데이트하는 데 사용되는 새로고침 컨트롤(refreshControl)입니다.

Relationships


Inherits From

UIViewController

Conforms To

UITableViewDataSource, UITableViewDelegate

profile
iOS dev / Japanese with Computer Science

0개의 댓글