View Controller의 생명주기
view controller는 위의 이미지와 같은 생명주기를 가집니다. 하나씩 살펴보자면
1. viewDidLoad
뷰의 컨트롤러가 메모리에 올라가고 나서 실행되는 함수입니다. 시스템에 의해 자동으로 호출이 되기 때문에 리소스를 초기화하거나 화면을 처음 켜졌을 때의 상황을 보여주는 역할을 합니다.
화면이 처음 띄워질 때 한번만 실행됩니다.
2. viewWillAppear
viewDidLoad 와 같이 뷰가 나타나기 전에 실행되는 함수이지만 viewDidLoad는 한번만 실행되는 반면 viewWillAppear은 여러번 실행될 수 있습니다. (다른 view에 갔다가 다시 돌아왔을 경우에도 해주고 싶은 처리가 있다면 viewWillAppear을 사용합니다.)
3. viewDidAppear
viewDidAppear은 화면이 모두 나타난 후, 호출이 됩니다.
4. viewWillDisappear
이름 그대로 view가 사라지기 직전에 호출되는 함수입니다.
5. viewDidDisappear
이름 그대로 view가 사라지고나서 호출되는 함수입니다.
-> A, B view가 있고, navigation controlloer로 view를 전환한다고 가정했을 때, A는 B의 viewDidLoad->viewWillAppear 함수가 호출된 이후 viewDidDisappear를 호출하고나서 완전히 사라지게 됩니다. 그 이후, B의 viewDidAppear함수가 호출되어 완전히 view가 나타납니다.
출처 및 참고: https://zeddios.tistory.com/43 [ZeddiOS]