테이블뷰
안녕하세요 오늘은 테이블뷰에 대해 정리해보려고 합니다!
iOS 개발에 있어서 필수로 숙지해두어야 하는 개념인 만큼 자세하게 다루어 보겠습니다
테이블 뷰란?
테이블 뷰란 단일 열에서 수직으로 스크롤되는 콘텐츠입니다. (출처: 공식 문서)
쉽게 말하자면! 하나의 열에 수직으로 쭉 데이터가 나열되어 스크롤할 수 있는 뷰라고 할 수 있을 것 같네요. 또한 하나의 행마다 앱의 데이터가 조금씩 들어가있습니다.
예를 들어, 연락처 앱에 들어가보면 사람들의 이름이 세로로 나열되어 있습니다. 한 사람의 이름을 터치하면 그 사람의 연락처 정보가 나타납니다.
여기에서 쓰인 것이 바로 테이블 뷰 TableView 라고 하고,
한 명 한 명이 들어있는 행은 셀 Cell 이라고 표현합니다.
테이블 뷰의 필요성
데이터를 표현하기 위해 그냥 Stack View를 사용해도 되지 않을까요?
만약 연락처 앱에 저장된 사람이 10명 뿐이라면 Stack View를 사용하여 표현하는 것이 더 효율적일 수도 있겠네요.
그런데 생각해봅시다. 만약 연락처에 100명, 1000명 이상 저장된다면 하나하나를 Stack View로 구현할 수 있을까요?
만약 연락처를 삭제하거나 추가한다면 변경사항을 Stack에 일일이 반영하는 것도 매우 번거로울 것입니다.
이럴 때 사용하는 것이 바로 테이블 뷰입니다.
수많은 뷰 객체가 필요할 때, 그런데 그 객체들이 모두 반복적인 디자인과 코드를 가지고 있을 때 쉽게 사용할 수 있습니다.
테이블 뷰에서는 하나의 셀만 디자인해놓으면 셀이 1000개든, 10000개든 쉽게 구현할 수 있기 때문입니다.
또한 테이블 뷰는 스크롤 뷰를 상속받고 있기 때문에, 따로 구현하지 않아도 스크롤이 이루어집니다!
테이블 뷰 구현
그렇다면 테이블 뷰는 어떻게 구현할까요?
크게 두 가지 방법이 있습니다.
1. View Controller로 구현하는 방법
먼저 뷰 컨트롤러로 구현하는 방법입니다.
화면 전체를 테이블 뷰로 구성해야 하는 제약이 있고, 만들 때부터 테이블 뷰가 이미 연결되어 있습니다.
2. Object Library로 구현하는 방법
다음은 테이블 뷰 객체를 추가하는 방법입니다.
화면 전체를 사용하지 않아도 다양하게 디자인을 조정할 수 있습니다. 하지만 Connection Inspector에서는 연결되어 있지 않습니다.
'공부하자! > iOS' 카테고리의 다른 글
[TIL] 타입캐스팅 (0) | 2022.08.18 |
---|---|
[TIL] 모듈화, 프레임워크, 접근 제어 (0) | 2022.08.17 |
[Swift] 자주 실수하는 오류 정리 (0) | 2022.08.11 |
[iOS] 화면 전환에 대하여 (0) | 2022.07.20 |
[Xcode] 스토리보드 추가, 지정, 접근하기 (0) | 2022.07.14 |