- loadView : LoadView is only called once: when the view needs to be loaded.
- viewDidLoad : Memory에 올림
- viewWillAppear
- viewWillLayoutSubviews
- viewDidLayoutSubviews
- viewDidAppear
- 뷰가 화면에 그려지는 원리Layout(size와 Position)을 토대로 Drawing 정의
- 뷰는 모두 사각형으로 그려지므로, 메서드 시그니처도 draw(rect:)로 정의된것.
- 뷰는 Constraints 값을 이용하여 Layout(size와 Position)을 결정
let constraints1 = [
self.myView.heightAnchor.constraint(equalToConstant: 300),
self.myView.widthAnchor.constraint(equalToConstant: 300),
self.myView.centerYAnchor.constraint(equalTo: self.view.centerYAnchor),
self.myView.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),
]
NSLayoutConstraint.activate(constraints1)
DispatchQueue.main.asyncAfter(deadline: .now() + 1.5) {
NSLayoutConstraint.deactivate(constraints1)
let constraints2 = [
self.myView.heightAnchor.constraint(equalToConstant: 100),
self.myView.widthAnchor.constraint(equalToConstant: 100),
self.myView.centerYAnchor.constraint(equalTo: self.view.centerYAnchor),
self.myView.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),
]
NSLayoutConstraint.activate(constraints2)
}
위와 같이 constraint가 변경되면 layout이 바뀌므로 layoutSubviews()가 호출된다.
728x90
'개발일기 > IOS' 카테고리의 다른 글
[Swift] - Notification 정리 (0) | 2024.03.15 |
---|---|
[Swift] - UIGestureRecognizer (0) | 2024.03.15 |
[Swift] - Animation 정리 2 (0) | 2024.03.15 |
[Swift] - Animation 정리 1 (0) | 2024.03.15 |
[Swift] - CollectionView 정리 (0) | 2024.03.15 |