UITableView?

주방·2022년 7월 19일
0

Swift

목록 보기
9/17
post-thumbnail

#1 UITableView

  • 단일 열의 행을 사용해 데이터를 표시하는 보기입니다.
  1. 개요
    • iOS의 테이블 보기는 단일 열에 세로로 스크롤되는 콘텐츠 행을 표시합니다.
    • 테이블의 각 행에는 앱 콘텐츠의 한 부분이 포함됩니다.
    • 예를 들어 연락처 앱은 각 연락처의 이름을 별도의 행에 표시하고 설정 앱의 기본 페이지에는 사용 가능한 설정 그룹이 표시됩니다. 하나의 긴 행 목록을 표시하도록 테이블을 구성하거나 관련 행을 섹션으로 그룹화하여 콘텐츠를 더 쉽게 탐색할 수 있다.
    • 표는 고도로 구조화되거나 계층적으로 구성된 데이터가 있는 앱에서 일반적이다. 계층적 데이터가 포함된 앱은 탐색 보기 컨트롤러와 함께 테이블을 사용하는 경우가 많다. 이는 계층의 다양한 수준 간 탐색을 용이하게 한다. 예를 들어 설정 앱은 테이블과 탐색 컨트롤러를 사용하여 시스템 설정을 구성합니다.
    • UITableView 테이블의 기본 모양을 관리하지만, 앱은 실제 콘텐츠를 표시하는 셀(개체)를 제공합니다. 표준 셀 구성은 텍스트와 이미지의 단순한 조합을 표시하지만 원하는 내용을 표시하는 사용자 정의 셀을 정의할 수 있습니다. 머리글 및 바닥글 보기를 제공함.
  2. 요소
    • UITableViewCell
      • 구조
        • 기본적으로 테이블 뷰 셀은 크게 콘텐츠 영역과 액세서리뷰 영역으로 구조가 나뉩니다.
          • 콘텐츠 영역: 셀의 왼쪽 부분에는 주로 문자열, 이미지 혹은 고유 식별자 등이 입력된다.
          • 액세서리뷰 영역: 셀의 오른쪽 작은 부분은 액세서리 뷰로 상세보기, 재정렬, 스위치 등과 같은 컨트롤 객체 위치
          • 편집모드
      • 기능
        • textLabel, detailTextLabel, imageView, accessoryView
    • UITableViewDataSource
      • 테이블 뷰를 생성하고 수정하는데 필요한 정보를 테이블 뷰 객체에 제공한다.
      • 데이터 모델의 델리게이트로, 테이블뷰의 시각적 모양에 대한 최소한의 정보를 제공한다.
      • UITableView 객체에 섹션의 수와 행의 수를 알려주며, 행의 삽입, 삭제 및 재정렬하는 기능을 선택적으로 구현할 수 있다.
    • UITableViewDelegate
      • 델리게이트는 테이블 뷰의 시각적인 부분 수정, 행의 선택관리, 액세서리 뷰 지원 그리고 테이블 뷰의 개별 행 편집을 도와준다.
      • 델리게이트 메서드를 활용하면 테이블 뷰의 세세한 부분을 조정할 수 있다.
        • Delegate Pattern?
          • 위임하는 것을 뜻한다. 내가 해야 할 일을 누군가에게 지시하고 그 결과를 가져오면 그 결과를 내가 상부에 보고하는 것이다.
          • 그래서 이미 만들어진 메서드에 적절한 리턴값만 넣어주면 작동한다.

#참조



#2. Assignment



#3. 회고

  • 뷰 하나당 하나의 Controller 뿐 아니라, 하나의 셀까지도 추가할 수 있다. 그리고 View Controller 내 Cell을 연결하여, 해당 Cell에 대한 값의 입력 등을 할 수 있어 조작할 수 있다. 현재 View Controller 내 Cell 생성 후 들어가야 할 값들의 배열을 저장 프로퍼티에 놔두고 있다. Cell을 분리해서 놓을 수 있다면, 객체의 값 역시 따로 떼어낼 수 있을 것 같다. 이 부분에 대해 고민하고 어떻게 떼어 작성하면 좋을지 고민하자.
  • 어떤 개념에 대한 학습을 하고 그 흐름을 확인하는데 있어 구현이 큰 도움이 많이 된다. 계속해서 구현하고 내용을 확인하려고 힘쓰자.

0개의 댓글