美文网首页iOS技术文章
知识小总结七 (Controller 的生命周期)☀️

知识小总结七 (Controller 的生命周期)☀️

作者: LeaderBiao | 来源:发表于2017-02-14 11:41 被阅读23次

    是什么?

    作为MVC设计模式中的C,Controller一直扮演着项目开发中最重要的角色,它是视图和数据的桥梁,通过它的管理,将数据有条有理的展示在我们的View层上。只要是个对象,就一定要有生命周期,UIViewController也不例外,生命周期管理Controller的作用范围和时间,也管理其内对象的作用范围和时间。
    初始化对象,初始化数据:
    init (initWithNibName)```
    
    ######从nib载入视图 ,通常这一步不需要去干涉。除非你没有使用xib文件创建视图:   
    

    loadView```

    载入完成,可以进行自定义数据以及动态创建其他控件:
    viewDidLoad```
    
    ######布局时调用: 
    

    updateViewConstraints,viewWillLayoutSubviews,viewDidLayoutSubviews```

    当controller作为一个子视图控制器被添加或被移除时调用:
    willMoveToParentViewController:
    didMoveToParentViewController:```
    
    ######视图将出现在屏幕之前,马上这个视图就会被展现在屏幕上了:
    

    viewWillAppear: ```

    视图已在屏幕上渲染完成:
    viewDidAppear:```
    
    ######视图将被从屏幕上移除之前执行 :
    

    viewWillDisappear:```

    视图已经被从屏幕上移除,用户看不到这个视图了:
    viewDidDisappear:```
    
    - 当视图从界面添加或移除时调用。如:一个看小说的页面,我们希望关闭小说后,再次打开可以显示在上次关闭时的位置。就可以在`viewWillDisappear:`方法保存滚动到的位置,在`viewWillAppear:`方法设置滚动的位置
    
    ######当视图控制器收到内存警告时调用。如果内存使用过高,会被iOS系统杀掉你的APP,也就是闪退:
    

    didReceiveMemoryWarning```


    当一个VC被导航控制器push时: pop时:
    willMoveToParentViewController: willMoveToParentViewController: (pop时参数为nil)
    viewWillAppear: viewWillDisappear:
    updateViewConstraints updateViewConstraints
    viewWillLayoutSubviews viewWillLayoutSubviews
    viewDidLayoutSubviews viewDidLayoutSubviews
    viewDidAppear: viewDidDisappear:
    didMoveToParentViewController: didMoveToParentViewController:(pop时参数为nil)

    相关文章

      网友评论

        本文标题:知识小总结七 (Controller 的生命周期)☀️

        本文链接:https://www.haomeiwen.com/subject/jbjxwttx.html