iOS/SwiftUI

[iOS] TableViewCell 커스텀 사용법 (XIB 파일)

유훈 | Yuhun 2022. 2. 15. 03:44
반응형

스토리보드의 기본 cell이 아닌 tableView를 커스텀해서 사용할 수 있습니다.

메인 스토리보드에 테이블뷰가 있다고 가정하고

TableViewCell을 만들어 주겠습니다.

 

커맨드+N -> 코코아 터치 클래스 -> Subclass: UITableViewCell , Also create XIB file 선택

그러면 swift 파일과 xib파일 두가지 파일이 생기게 됩니다.

 

xib 파일에서는 원하는 대로 cell을 만져주시고 class는 swift 파일의 class를 사용합니다.

 

이제 cell을 사용할 곳에 Nib 파일을 가져오고 이를 tableView에 등록한 후에 사용해야 합니다.

tableView에 등록

// tableView는
// 1. tableView일 경우 @IBOulet으로 가져옴
// 2. tableViewController일 경우 그냥 self.tableView라고 사용.

let exNib = UINib(nibName: "xib파일 이름", bundle: nil)
self.tableView.register(exNib, forCellReuseIdentifier: "고유 이름 원하는 값")

 

이제 TableView의 cellForRowAt 함수로 가서 cell을 가져오고 사용할 수 있습니다.

tableView에서 가져오기

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        guard let cell = self.tableView.dequeueReusableCell(withIdentifier: "아까 입력한 고유값", for: indexPath) as? "cell의 class" else {return UITableViewCell()}        
        
        // cell에 값 지정
        
        return cell
    }

 

이런 방식으로 cell을 xib 파일로 분리하고 커스텀해서 사용이 가능합니다.

반응형

'iOS > SwiftUI' 카테고리의 다른 글

[iOS] textField Delegate와 최초 커서 설정  (0) 2022.02.12