A colossal Dreamer: GR鐵塔-天生我材

UIViewController Lifecycle 본문

Development/아이폰

UIViewController Lifecycle

江多林 2018. 4. 18. 15:26

isBeingPresented 와 isBeingDismissed 는 자신이 root 로 presentModal 동작할 때만 설정된다.


  UINavigationController 로 쌓여서 modal 동작하는 경우 설정되지 않는다.

  NavigationPush/Pop 에서도 설정되지 않는다.


2018-04-18T06:18:27Z: ViewController<111>.init(coder:){ }

2018-04-18T06:18:27Z: ViewController<111>.loadViewIfNeeded(){ }

2018-04-18T06:18:27Z: ViewController<111>.loadView(){ }

2018-04-18T06:18:27Z: ViewController<111>.viewDidLoad(){ }

2018-04-18T06:18:27Z: ViewController<111>.viewWillAppear{ }

2018-04-18T06:18:27Z: ViewController<111>.viewWillLayoutSubviews(){ }

2018-04-18T06:18:27Z: ViewController<111>.viewDidLayoutSubviews(){ }

2018-04-18T06:18:27Z: ViewController<111>.viewWillLayoutSubviews(){ }

2018-04-18T06:18:27Z: ViewController<111>.viewDidLayoutSubviews(){ }

2018-04-18T06:18:27Z: ViewController<111>.viewDidAppear{ }


2018-04-18T06:18:31Z: ViewController<111>.pushAction{ }

2018-04-18T06:18:31Z: ViewController<222>.init(coder:){ }

2018-04-18T06:18:31Z: UINavigationController<222> created.

Pushing a navigation controller is not supported


2018-04-18T06:18:34Z: ViewController<111>.popAction{ }


2018-04-18T06:18:40Z: ViewController<111>.presentModalAction{ }

2018-04-18T06:18:40Z: ViewController<333>.init(coder:){ }

2018-04-18T06:18:40Z: UINavigationController<333> created.

    navigationController 에 쌓여진 ViewController<333>

2018-04-18T06:18:40Z: ViewController<111>.present(_:animated:){ }

2018-04-18T06:18:40Z: ViewController<333>.loadView(){ }

2018-04-18T06:18:40Z: ViewController<333>.viewDidLoad(){ }

2018-04-18T06:18:40Z: ViewController<111>.viewWillDisappear{ }

2018-04-18T06:18:40Z: ViewController<333>.loadViewIfNeeded(){ }

2018-04-18T06:18:40Z: ViewController<333>.viewWillAppear{ }

2018-04-18T06:18:40Z: ViewController<333>.viewWillLayoutSubviews(){ }

2018-04-18T06:18:40Z: ViewController<333>.viewDidLayoutSubviews(){ }

2018-04-18T06:18:40Z: ViewController<333>.viewWillLayoutSubviews(){ }

2018-04-18T06:18:40Z: ViewController<333>.viewDidLayoutSubviews(){ }

2018-04-18T06:18:40Z: ViewController<333>.viewDidAppear{ }

2018-04-18T06:18:40Z: ViewController<111>.viewDidDisappear{ }


2018-04-18T06:19:14Z: ViewController<333>.dismissModalAction{ }

2018-04-18T06:19:14Z: ViewController<333>.dismiss(animated:){ }

2018-04-18T06:19:14Z: ViewController<333>.viewWillDisappear{ }

2018-04-18T06:19:14Z: ViewController<111>.viewWillAppear{ }

2018-04-18T06:19:15Z: ViewController<111>.viewDidAppear{ }

2018-04-18T06:19:15Z: ViewController<333>.viewDidDisappear{ }


2018-04-18T06:19:23Z: ViewController<111>.pushAction{ }

2018-04-18T06:19:23Z: ViewController<444>.init(coder:){ }

2018-04-18T06:19:23Z: ViewController<444> created.

2018-04-18T06:19:23Z: ViewController<444>.loadView(){ }

2018-04-18T06:19:23Z: ViewController<444>.viewDidLoad(){ }

2018-04-18T06:19:23Z: ViewController<111>.viewWillDisappear{ }

2018-04-18T06:19:23Z: ViewController<444>.viewWillAppear{

    isMovingToParentViewController}

2018-04-18T06:19:23Z: ViewController<444>.loadViewIfNeeded(){ }

2018-04-18T06:19:23Z: ViewController<444>.viewWillLayoutSubviews(){ }

2018-04-18T06:19:23Z: ViewController<444>.viewDidLayoutSubviews(){ }

2018-04-18T06:19:23Z: ViewController<444>.viewWillLayoutSubviews(){ }

2018-04-18T06:19:23Z: ViewController<444>.viewDidLayoutSubviews(){ }

2018-04-18T06:19:24Z: ViewController<111>.viewDidDisappear{ }

2018-04-18T06:19:24Z: ViewController<444>.viewDidAppear{

    isMovingToParentViewController}


2018-04-18T06:19:27Z: ViewController<444>.popAction{ }

2018-04-18T06:19:27Z: ViewController<444>.viewWillDisappear{

    isMovingFromParentViewController}

2018-04-18T06:19:27Z: ViewController<111>.viewWillAppear{ }

2018-04-18T06:19:27Z: ViewController<111>.loadViewIfNeeded(){ }

2018-04-18T06:19:27Z: ViewController<444>.viewDidDisappear{

    isMovingFromParentViewController}

2018-04-18T06:19:27Z: ViewController<111>.viewDidAppear{ }


2018-04-18T06:19:30Z: ViewController<111>.presentModalAction{ }

2018-04-18T06:19:30Z: ViewController<555>.init(coder:){ }

2018-04-18T06:19:30Z: ViewController<555> created.

2018-04-18T06:19:30Z: ViewController<111>.present(_:animated:){ }

2018-04-18T06:19:30Z: ViewController<555>.loadView(){ }

2018-04-18T06:19:30Z: ViewController<555>.viewDidLoad(){ }

2018-04-18T06:19:30Z: ViewController<555>.prefersStatusBarHidden{

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.preferredStatusBarStyle{

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.prefersStatusBarHidden{

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.preferredStatusBar...

    UpdateAnimation{isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.prefersStatusBarHidden{

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<111>.viewWillDisappear{ }

2018-04-18T06:19:30Z: ViewController<555>.viewWillAppear{

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.viewWillLayoutSubviews(){

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.viewDidLayoutSubviews(){

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.viewWillLayoutSubviews(){

    isBeingPresented}

2018-04-18T06:19:30Z: ViewController<555>.viewDidLayoutSubviews(){

    isBeingPresented}

2018-04-18T06:19:31Z: ViewController<555>.viewDidAppear{

    isBeingPresented}

2018-04-18T06:19:31Z: ViewController<111>.viewDidDisappear{ }


2018-04-18T06:19:33Z: ViewController<555>.dismissModalAction{ }

2018-04-18T06:19:33Z: ViewController<555>.dismiss(animated:){ }

2018-04-18T06:19:33Z: ViewController<555>.viewWillDisappear{

    isBeingDismissed}

2018-04-18T06:19:33Z: ViewController<111>.viewWillAppear{ }

2018-04-18T06:19:34Z: ViewController<111>.viewDidAppear{ }

2018-04-18T06:19:34Z: ViewController<555>.viewDidDisappear{

    isBeingDismissed}


- swipeBackNavi

2018-04-18T10:03:39Z: ViewController<222>.viewWillDisappear{

    isMovingFromParentViewController}

2018-04-18T10:03:39Z: ViewController<111>.viewWillAppear{ }

2018-04-18T10:03:39Z: ViewController<111>.loadViewIfNeeded(){ }

. - swipeBackNavi cancel

2018-04-18T10:03:42Z: ViewController<111>.viewWillDisappear{ }

2018-04-18T10:03:42Z: ViewController<111>.viewDidDisappear{ }

2018-04-18T10:03:42Z: ViewController<222>.viewWillAppear{ isMovingToParentViewController}

2018-04-18T10:03:42Z: ViewController<222>.viewDidAppear{ isMovingToParentViewController}