关于IBOutlet的生命周期

在调试程序的时候,发现 IBOutlet的对象在执行 getter时,开始一直想找IBOutlet对象getter方法前被执行的代码,但是一直找不到,于是我就想是不是系统自动给IBOutlet 自动初始化了,于是做了一个实验,得出一个结论IBOutlet对象getter方法 会在awakeNib之后但在viewDidload后进行初始化。

当上一个视图 Segue 传递过来的一个变量,那么是先执行 -(void) awakeFromNib 然后在执行变量的setter方法

- (void)viewDidLoad
{
    NSLog(@"ViewDidLoad!");
    [super viewDidLoad];
    [self.scrollView addSubview:self.imageView];
}

- (void) awakeFromNib{
    NSLog(@"awakeFromNib");
    self.splitViewController.delegate = self;
}

-(void)setSpinner:(UIActivityIndicatorView *)spinner{
    NSLog(@"IBAction Spiner");
}

- (void)setScrollView:(UIScrollView *)scrollView
{
    NSLog(@"IBAction ScrollView");
    _scrollView = scrollView;

    // next three lines are necessary for zooming
    _scrollView.minimumZoomScale = 0.2;
    _scrollView.maximumZoomScale = 2.0;
    _scrollView.delegate = self;

    // next line is necessary in case self.image gets set before self.scrollView does
    // for example, prepareForSegue:sender: is called before outlet-setting phase
    self.scrollView.contentSize = self.image ? self.image.size : CGSizeZero;
}

//output:
2014-11-06 17:11:13.216 Photomania[760:60b] awakeFromNib
2014-11-06 17:11:21.891 Photomania[760:60b] IBAction ScrollView
2014-11-06 17:11:21.892 Photomania[760:60b] IBAction Spiner
2014-11-06 17:11:21.895 Photomania[760:60b] ViewDidLoad!
时间: 2024-07-29 06:21:57

关于IBOutlet的生命周期的相关文章

iOS学习笔记—ViewController/生命周期

ViewController是iOS应用程序中重要的部分,是应用程序数据和视图之间的重要桥梁,ViewController管理应用中的众多视图.iOS的SDK中提供很多原生ViewController,以支持标准的用户界面,例如表视图控制器(UITableViewController).导航控制器(UINavigationController).标签栏控制器(UITabbarController)和iPad专有的UISplitViewController等. 按结构可以对iOS的所有ViewCo

iOS view和viewController的生命周期

转自:http://blog.sina.com.cn/s/blog_801997310101a39w.html 一.ViewController的职责 对内管理与之关联的View,对外跟其他ViewController通信和协调.对于与之关联的View,ViewController总是在需要的时候才加载视图,并在不需要的时候卸载视图,所以也同时担当了管理应用资源的责任 二.ViewController的生命周期 View是指Controller的View.它作为Controler的属性,生命周期

ios基础 ViewController 生命周期

ViewController是iOS应用程序中重要的部分,是应用程序数据和视图之间的重要桥梁,ViewController管理应用中的众多视图.iOS的SDK中提供很多原生ViewController,以支持标准的用户界面,例如表视图控制器(UITableViewController).导航控制器(UINavigationController).标签栏控制器(UITabbarController)和iPad专有的UISplitViewController等. 按结构可以对iOS的所有ViewCo

IOS学习笔记——ViewController生命周期详解

在我之前的学习笔记中讨论过ViewController,过了这么久,对它也有了新的认识和体会,ViewController是我们在开发过程中碰到最多的朋友,今天就来好好认识一下它.ViewController是IOS开发中MVC模式中的C,ViewController是view的controller,ViewController的职责主要包括管理内部各个view的加载显示和卸载,同时负责与其他ViewController的通信和协调.在IOS中,有两类ViewController,一类是显示内容

iOS生命周期 & 通知中心

笔记内容 学习笔记-段玉磊 Stanford course View Controller Lifecycle 这篇文是我记载Developing iOS 7 Apps公开课 第5课的笔记 UITextView Set its text and attributes via its NSMutableAttributedString 使用UITextView 要属性NSTextStorage类型 @property (nonatomic, readonly) NSTextStorage *tex

IOS学习笔记37——ViewController生命周期详解

在我之前的学习笔记中讨论过ViewController,过了这么久,对它也有了新的认识和体会,ViewController是我们在开发过程中碰到最多的朋友,今天就来好好认识一下它.ViewController是IOS开发中MVC模式中的C,ViewController是view的controller,ViewController的职责主要包括管理内部各个view的加载显示和卸载,同时负责与其他ViewController的通信和协调.在IOS中,有两类ViewController,一类是显示内容

iOS学习笔记-ViewController/生命周期

ViewController是iOS应用程序中重要的部分,是应用程序数据和视图之间的重要桥梁,ViewController管理应用中的众多视图.iOS的SDK中提供很多原生ViewController,以支持标准的用户界面,例如表视图控制器(UITableViewController).导航控制器(UINavigationController).标签栏控制器(UITabbarController)和iPad专有的UISplitViewController等. 按结构可以对iOS的所有ViewCo

View和viewController的生命周期

一.ViewController的职责 对内管理与之关联的View,对外跟其他ViewController通信和协调.对于与之关联的View,ViewController总是在需要的时候才加载视图,并在不需要的时候卸载视图,所以也同时担当了管理应用资源的责任 二.ViewController的生命周期 View是指Controller的View.它作为Controler的属性,生命周期在Controller的生命周期内.就是说你的Controller不能在view释放前就释放了. viewCon

0517.View、ViewController的生命周期及相关函数的用途[UIKit]

准备知识(来自网易博友:烟花细雨): 1.按照结构可以把ViewController分为2类: 1)主要是用于显示内容的ViewController,这种ViewController主要是用于为用户展示内容,并且与用户交互,比如UITableViewCOntroller,UIVewController 2)永固控制和显示其他ViewController的ViewController,这种ViewController一般都是一个ViewCOntroller的容器.比如UINavigationCon