我是靠谱客的博主 自信小猫咪,这篇文章主要介绍iOS 导航控制器栈和视图控制器的生命周期,现在分享给大家,希望可以做个参考。

1、导航控制器栈

  • 就是用来保管导航控制器内所有的子控制器。
  • 导航控制器栈中的控制器是以先进后出的顺序出入栈的。每次push到一个控制器,就会将这个控制器添加到这个导航控制器栈中,执行pop方法时,将当前这个控制器释放并销毁,然后就会显示要pop到的目标控制器。
  • 利用UINavigationController,可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是系统自带的“设置”应用。

2、视图控制器view的生命周期

  • 1、场景:FirstViewController跳转到SecondViewController再跳转到ThirdViewController(导航栏跳转)

    • 1> 首先运行显示出来的是FirstViewController,他的方法运行顺序是:

    loadView —> viewDidLoad —> viewWillAppear —>viewDidAppear

    • 2> 从FirstViewController跳转SecondViewController。顺序:(他们是在两个控制器之间相互切换)
      > loadVIew(SecondVC)—> viewDidload(SecondVC)—> viewWillDisappear(FirstVC) —> viewwillAppear(SecondVC)—> viewDidDisappear(FirstVC)—> viewDidAppear(FirstVC)

    • 3> 从SecondViewController跳转到ThirdViewController。顺序:

    loadView(ThirdVC)—> viewDidload(ThirdVC)—> viewWillDisappear(SecondVC)—> viewwillAppear(ThirdVC)—> viewDidDisappear(SecondVC)—> viewDidAppear(ThirdVC)

  • 4> 从ThirdViewController跳转到根控制器(FirstViewController)

viewWillDisappear(ThirdVC)—> viewWillAppear(FirstVC)—> dealloc (SecondVC)—> ViewDidDisappear(ThirdVC)—> viewDidAppear(FirstVC)—> dealloc (ThirdVC)

最后

以上就是自信小猫咪最近收集整理的关于iOS 导航控制器栈和视图控制器的生命周期的全部内容,更多相关iOS内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(76)

评论列表共有 0 条评论

立即
投稿
返回
顶部