zoukankan      html  css  js  c++  java
  • ios学习之UIViewControl生命周期

    提到UIViewcontrol,每个人都不会陌生吧!平时实际开发中,每天的实际开发应该都少不了它。学过android的各位亲,也对生命周期这四个 字并不陌生,无论是activity,还是service,也都皆已熟识了吧。也是由于之前学android的经验,看到后第一感觉就是,其生命周期是怎 样的呢?好吧,说了这么多,开始进入UIViewControl的身体吧。

     
    打开官方网站,找了下,并没看到其生命周期的论述,反而有的是关于各种ViewControl的介绍。但从其类的方法中,我们可以看出一些端臆,但究竟是不是,还是写下代码测试下为好。具体代码就不列出,记录下其生命周期吧。
     
     
    如上图,整个过程大概如上,具体方法如下:
     
    initWithNibName
     
    这是controller的初始化方法,当你使用nib文件进行初始化时,将自动直接执行,也可自定义nib文件初始化。而当你并未使用nib文件,nibname将是nil,但仍可以返回一个空的UIView,并且你可以用代码自定义自己的view.
     
    loadView
     
    为controller创建view,但你需要代码自定义view时,自定义UI将写在这个方法内。需要注意一点的是,此方法不可使用super中的view
     
    viewDidLoad
     
    可以做一些loadView后的操作,当然,这个方法和上面loadView方法在这个viewController没有消亡前,皆只执行一次。类似于android的onCreate吧
     
    viewWillAppear和viewDidAppear
     
    这两个放一起,是因为这两个每当view要出现时都会执行,在还没看到view时执行viewWillAppear,而当view添加到视图中后,将执行此方法表示控制的view已加载。
     
    viewWillDisappear和viewDidDisappear
     
    这两个是当view将消失时执行的,将要消失时调用viewWillDisappear,消失后立即调用viewDidDisappear
     
    viewWillUnload和viewDidUnload
     
    这两个和上面的loadView和viewDidload对应,当收到内存警告时,在viewWillUnload中,我们可以对一些改 view中的一些必要信息进行保存,已保证在view看不到的情况下,view被释放了。而viewDidUnload方法中我们则可以释放掉那些强引 用。
    相关文章:http://www.2cto.com/kf/201307/226133.html
  • 相关阅读:
    POJ 1300 Open Door
    POJ 2230 Watchcow
    codevs 1028 花店橱窗布置
    codevs 1021 玛丽卡
    codevs 1519 过路费
    codevs 3287 货车运输
    codevs 3305 水果姐逛水果街二
    codevs 1036 商务旅行
    codevs 4605 LCA
    POJ 1330 Nearest Common Ancestors
  • 原文地址:https://www.cnblogs.com/langtianya/p/3720308.html
Copyright © 2011-2022 走看看