美文网首页
ViewController生命周期

ViewController生命周期

作者: 43b86d3b5040 | 来源:发表于2017-04-10 23:28 被阅读31次

    当一个视图控制器被创建,并在屏幕上显示的时候,代码的执行顺序如下:

    1. initialize 当前类第一次被使用的时候调用,该方法在整个程序运行的过程中只会执行一次,并且不需要[supuer initialize]。
    2. alloc 创建对象,分配空间。
    3. init 初始化对象,初始化数据。
    4. loadView 不需要用户主动调用,这方法是当view为nil的时候被调用。也就是说如果当当前的。ViewController接收到系统发送的didReceiveMemoryWarning事件的时候可能会把当前的。ViewCongtroller中的视图置为nil,那么当这个ViewController再次显示出来的时候就会再次调用loadView方法。
    5. viewDidLoad 视图载入完成,可以进行自定义数据以及动态创建其他控件。
    6. viewWillAppear 视图即将出现在屏幕之前。
    7. viewWillLayoutSubviews 布局子视图,比如一些控件的约束可以在这里设置。
    8. viewDidLayoutSubviews 已经布局完成子视图。经过测试,从nib文件加载的controller,只要不释放,在每次viewWillAppare时都会调用layoutSubviews方法,有时甚至会在viewDidAppare后在调用一次layoutSubviews,而重点是从代码加载的则只会在开始调用一次,之后都不会,所以注意,在layoutSubviews中写相关的布局代码十分危险
    9. viewDidAppear 视图在屏幕上渲染完成。
    10. viewVillDisappear 视图即将消失在屏幕之前。
    11. viewDidDisappear 视图消失在屏幕之后
    12. didReceiveMemoryWarning 当系统接收到系统警告的时候会发送给除正在显示的ViewController的其余ViewController该方法,以便用户释放无用内存。系统会将一些视图置nil,就会导致当再次显示该ViewController的时候,重新调用loadView和viewDidLoad方法,重新布局视图。
    13. dealoc 控制钱被销毁释放。

    相关文章

      网友评论

          本文标题:ViewController生命周期

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