var test = UITableView() {
didSet {
}
}
@IBOutlet private weak var tableView: UITableView! {
didSet{
}
}
ReferenceType vs Struct Type
1. ReferenceType (ex. Class)
class Person {
var name = "youn"
}
var test: Person = Person() {
didSet {
print("didSet called")
}
}
- 인스턴스 자체를 변경할 때 불림
test.name = "hi" // 안불림
test = Person() // 불림
2. Value Type (ex. struct)
struct Person {
var name = "youn"
}
var test: Person = Person() {
didSet {
print("didSet called")
}
}
Outlet 의 didSet
- didSet 은 init 타임에 불리지 않음
- outlet 의 경우 초기화 시점에 nil 로 세팅 됨
- 해당 object를 nib 으로부터 가져올 때 다시 세팅, 값을 가짐
viewDidLoad
바로 전에 호출
참고