[UIKit / iOS / Swift] view.addSubview와 contentView.addSubview의 차이OS/iOS2025. 1. 13. 15:19
Table of Contents
view.addSubview
일반적인 뷰 컨트롤러나 커스텀 뷰 클래스에서 사용됨
뷰 컨트롤러의 루트 뷰 또는 커스텀 뷰의 서브뷰로 UI요소를 추가함
UIViewController는 view라는 기본 프로퍼티를 가지며, 모든 UI 요소는 이 뷰에 추가하는 것이 기본.
따라서 뷰 컨트롤러의 UI를 구성할 때는 view.addSubview를 사용하는 것이다.
class ViewController: UIViewController {
let tableView = UITableView()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(tableView) // view에 추가
}
}
contentView.addSubview
주로 커스텀 UITableViewCell이나 UICollectionViewCell에서 사용됨
셀 내부에 있는 contentView에 서브뷰를 추가함.
UITableViewCell과 UICollectionViewCell은 기본적으로 contentView라는 프로퍼티를 가지고 있으며,
모든 커스텀 UI 요소는 이 contentView에 추가하는 것이 일반적이다.
class CustomTableViewCell: UITableViewCell {
let label = UILabel()
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
contentView.addSubview(label) // contentView에 추가
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
'OS > iOS' 카테고리의 다른 글
[iOS / Swift] UINavigationBar를 구현해보자. (0) | 2025.01.08 |
---|---|
[iOS / Swift] Then 라이브러리 (1) | 2024.12.27 |
[iOS / Swift] 라이브러리 SnapKit이란? (0) | 2024.12.24 |
[Swift / iOS] LaunchScreen 설정 (UIKit, Storyboard) (0) | 2024.12.16 |
코드베이스 UI 작성을 위한 셋팅 (0) | 2024.11.20 |
@Quaker.Lee :: 개발하는 퀘이커
살아남는 iOS 개발자가 되기 위해 끊임없이 노력하고 있습니다.