데이터 소스
: UITableViewDataSource
프로토콜을 채택한 형식UITableViewDataSource
: 테이블 뷰를 표시하는데 필요한 메소드가 선언되어있음개수
: 몇 개의 셀을 표시하는지 리턴
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return Memo.dummyMemoList.count
}
어떤 디자인으로 어떤 데이터를 표시하는지
IndexPath
: 목록 내에서 특정 셀 위치를 표현할 때 사용override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
//메인스토리보드에서 생성했던 프로토타입셀이 생성되어 저장됨
//프로토타입 셀에서 withIdentifier에 입력된 identifier을 가진 셀을 자동으로 만들어줌
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
// 셀이 생성되는 시점에서 비어있기 때문에 내용을 채워줌
// Configure the cell...
// indexPath.row 속성에 접근하면 몇번째 셀인지 확인 가능
let target = Memo.dummyMemoList[indexPath.row]
//Subtitle 스타일에는 textLabel 과 detailTextLabel이 있음
cell.textLabel?.text = target.content
cell.detailTextLabel?.text = target.insertDate.description
return cell
}
위의 두 가지 메소드는 필수임