TableView란?
Table View는 사용자 정의 가능한 데이터를 행과 섹션으로 분할된 단일 열에 표시하는 것으로
간단하게 말하자면, 항목들이 나열된 화면으로 메세지나 연락처, 메모장과 같은 예시가 있습니다.
정적 테이블 뷰 : 동적 테이블 뷰
테이블 뷰에는 정적 테이블 뷰와 동적 테이블 뷰 두 가지가 있습니다.
정적 테이블은 고정된 개수의 행들이 테이블에 표시되는 형태로 설정 페이지와 같습니다.
동적 테이블은 가변적으로 행들의 개수가 표시, 즉 추가 삭제 수정이 가능합니다.
그렇기 때문에 상황에 따라 적절하게 사용하면 좋은 앱을 만들 수 있을 것입니다.
DataSource, Delegate
DataSource는 테이블에 무엇을 표시할 것인지 물어보는 것으로
타이틀 정보, 데이터 표시 수량, 영역의 개수과 같은 테이블 뷰에 대한 기본적인 메서드들을 정의하는UITableView DataSource 프로토콜을 구현합니다.
Delegate는 아이폰, 테이블 뷰가 프로그래머, 개발자에게 결정을 위임해주거나, 어떻게 표시할지?와 같은 정보를 물어보는 것으로 표시되는 모습 제어, 사용자의 터치에 대한 인식, 행의 높이, 들여쓰기, 행 삭제 수정과 같은 기능을 제공하는 UITableView Delegate 프로토콜을 구현합니다.
메서드
어떤 클래스가 테이블 뷰 컨트롤러를 위한 데이터소스의 역할을 하기 위해선 여러 메서드가 구현되야합니다.
1, numberOfSectionsInTableView 메서드입니다.
numberOfSectionsInTableView 메서드는 테이블의 섹션 개수를 반환해주는 메서드입니다.
2, numberOfRowsInSection 메서드입니다.
numberOfRowsInSection 메서드는 테이블에서 표시될 행의 개수를 반환해주는 메서드입니다.
테이블 뷰에서는 보통 배열의 항목을 반환해주는 역할로 사용됩니다.
3, cellForRowAtIndexPath 메서드입니다.
cellForRowAtIndexPath 메서드는 클래스의 인스턴스를 반환하는 즉, 필요한 셀 객체의 행을 가리키는 인덱스 값을 전달하는 역할을 합니다. 이 메서드에 전달된 인덱스 값을 기반으로 데이터 배열에서 정확한 데이터를 추출시킵니다.
또한 테이블 뷰 컨트롤러가 표시할 새로운 셀을 필요로 할 때마다 이 메서들르 호출합니다.
내용 출처
https://www.youtube.com/watch?v=F5WhaFcK9sg
https://www.youtube.com/watch?v=AG5u4wtMdB4&t=902s
https://www.youtube.com/watch?v=Lgj_KjNLeVw
https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA/featured
'2022_iOS 앱 개발자 워크숍 > 3, App' 카테고리의 다른 글
ViewController 화면 이동(전환) (2) | 2022.01.20 |
---|---|
Table View Header Title UI 변경 (2) | 2022.01.19 |
Table View 생성하기 2 ( 중첩 배열 사용 ) (0) | 2022.01.19 |
Table View (0) | 2022.01.18 |
Table View 생성하기 (0) | 2022.01.18 |
댓글