UIViewController 和 UIView 生命周期 iOS

UIViewController and UIView Life cycles in iOS

我很想知道 View Controller 和 View 的生命周期。在网上查了很多,还是对以下几个概念有误解:

Controller中有控制UIView生命周期的函数,但是有没有控制UIViewController生命周期的函数

this文章中,Any提到两者有不同的生命周期,并且仅针对视图的生命周期进行了解释。任何帮助将不胜感激...

其实UIViewControllerUIView的生命周期没有直接关系,可以独立对待。

对于UIViewController,其生命周期受其使用方式的影响:

  1. 如果在容器viewController中用作childViewControllerUINavigationController/UITabBarController/UISplitViewController等),或者作为 window.rootViewController,它的生命周期将是:

    init
    viewDidLoad
    willMoveToParentViewController:
    viewWillAppear:
    didMoveToParentViewController:
    viewDidAppear:
    willMoveToParentViewController:
    viewWillDisappear:
    didMoveToParentViewController:
    viewDidDisappear:
    dealloc
    
  2. 如果只是使用viewController.view将其添加到其他视图,其生命周期可能只有:

    init
    viewDidLoad
    viewWillAppear:
    viewDidAppear:
    dealloc