iOS开发

iOS-UIViewController的各个方法的作用

2019-10-08  本文已影响0人  inyourface

一、ViewController的生命周期

    1.ViewController 第一步是初始化。具体调用的方法根据实际情况有所不同。使用 StoryBoard ,我们不需要显式地去初始化,Storyboard 会自动使用 initWithCoder: 进行初始化。使用纯代码或xib,可以使用 init: 函数进行初始化,init: 函数在实现过程中还会调用 initWithNibName:bundle:。 步骤:

1.首先判断控制器是否有视图,如果没有就调用loadView方法创建:通过storyboard或者代码;

2.调用viewDidLoad,可以进行下一步的初始化操作;

3.视图显示之前调用viewWillAppear,该函数可以使用多次

4.视图将去除viewWillDisappear;

5.布局变化前后,调用viewWill/DidLayoutSubviews;

二、初始化后执行的方法

1.initWithCoder:当控件是从xib、storyboard中创建时,就会调用这个方法

2.awakeFromNib:在initWithCoder:方法后调用 ,顺序是:initWithCoder  -> awakeFromNib

3.  (void)loadView:当没有正在使用xib视图页面,子类将会创建自己自定义视图层,不允许直接调用,子类可重写

4.(void)viewDidLoad:视图加载后被调用,如果是在代码中创建的视图加载器,将会loadView方法后被调用,如果是nib视图页面输出,将会在视图设置好后被调用

5.(void)viewWillAppear :视图即将可见时调用

6.(void)viewWillLayoutSubviews:控制器将要布局View的子控件时调用,每当视图的bounds改变时,view将调整其子控件的位置

7.(void)viewDidLayoutSubviews:会在控制器已经布局子控件的时候调用

8.(void)viewDidAppear:视图已经完全过度到屏幕上时调用

9.(void)viewWillDisappear:视图将去除,被覆盖或异常于视图时的通知会呼叫的方法

10.(void)viewDidDisappear:视图被驳回时调用,覆盖或者以其他方式隐藏

上一篇 下一篇

猜你喜欢

热点阅读