Things take time

[SWIFT] (이것저것) viewDidLoad는 메모리에 할당될 때 호출된다. 본문

iOS (기능)

[SWIFT] (이것저것) viewDidLoad는 메모리에 할당될 때 호출된다.

겸손할 겸 2022. 6. 28. 14:15

실제 화면을 addChild로 넣기도 전에 ViewDidLoad가 호출될 때가 있는데, 이는 해당 뷰 컨트롤러 객체를 생성하고, 그에 추가적으로 작업을 수행할 때 호출된다.

 

let mainViewController = (storyboard.instantiateViewController(withIdentifier: "AAMainViewController") as! AAMainViewController)

이 작업은 단순 인스턴스를 선언한 것에 불과하고

mainViewController.abc()

이처럼 해당 인스턴에 접근해서 동작을 호출한다면, 그 때 메모리에 올라가므로 viewDidLoad가 호출된다.

self.view.addChild(mainViewController)

위와 같이 일반적인 방법으로 child로 넣을땐 당연히 viewDidLoad가 호출되지만, 화면에 보이지 않더라도 해당 인스턴스에 접근하여 동작을 수행하면 viewDidLoad가 호출된다.