ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • View LifeCycle (생명주기)
    iOS 2020. 11. 24. 14:01

    안녕하세요. 그린입니다!

    오늘은 스위프트로 뷰가 나타나는 생명주기에 대해 학습하겠습니다.

     

    View LifeCycle, 생명주기 간단한 주제이지만 화면 전환에 있어서 가장 중요하죠~!?

    뷰가 화면에 나타나고 사라질때 그 순환 싸이클을 나타내는것으로 뷰 컨트롤러에는 아래와 같이 여러 단계의 생명주기를 가지고 있습니다.

    뷰 생명주기

    [생명주기]

    1. init (초기화)

    2. loadView

    -. 뷰 컨트롤러가 메모리에 로드된다.

    3. viewDidLoad

    -. 뷰가 실질적으로 메모리에 로드된다. 이 메서드에서 오버라이드하여 화면이 보여지기 전 기능들을 구현할 수 있다. 간단히 초기화면을 구성하는 메서드로 볼 수 있다. 중요한점은 해당 메서드는 실행 후 오직 한번만 호출이 된다.

    4. viewWillAppear

    -. 말 그대로 뷰가 보여질 예정을 뜻한다. 즉 뷰 컨트롤러의 화면이 생성되고 뷰가 화면에 나타나기 전에 호출이 된다. 만약 다른 뷰로 이동 시 대상 뷰에서 호출이 됨으로 그 호출 시 구현할 기능들이 들어가면 된다. 화면 전환 시에 viewDidLoad가 호출되지않고 해당 메서드가 호출된다.

    5. viewDidAppear

    -. 뷰가 화면에 나타나고나서 호출되는 메서드이다. 화면에 실제로 노출 후의 실행할 작업들을 구현해주면 된다.

    6. viewWillDisappear

    -. 뷰가 사라질 예정을 뜻한다. 화면전환 시에 많이 사용되며, 다음 뷰의 WillAppear와 순서대로 호출이된다.

    7. viewDidDisappear

    -. 뷰가 사라지고 난 후 를 뜻한다. 뷰 전환 시 사라지고 난 후 기능을 멈추거나 다른 동작이 필요하다면 해당 메서드에서 구현해줄 수 있다.

    8. viewDidUnload

    -. 뷰 로드제거

    [참고자료]

    https://developer.apple.com/reference/uikit/uiviewcontroller/1621454-loadview

     

    Apple Developer Documentation

     

    developer.apple.com

     

    이상으로 간단하게 스위프트에서의 뷰 생명주기에 대해 알아봤습니다.

    각 단계마다 잘 활용하면 화면전환 시 유용하게 쓰임으로 꼭 숙지해야될 부분입니다.

    감사합니다! :D

    'iOS' 카테고리의 다른 글

    단위테스트와 TDD  (0) 2020.12.15
    AppDelegate & SceneDelegate  (0) 2020.12.07
    Gesture Recognizer  (0) 2020.12.02
    UML  (0) 2020.12.02
    KVO와 Notification 간단 정리  (0) 2020.11.19
Designed by Tistory.