创建控制器view的几种方式

时间:2021-09-29 08:59:20

1. 根据storyboard的描述创建

2. 通过xib的描述创建

3. 通过代码创建控制器的view

  self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
      self.window.backgroundColor = [UIColor whiteColor];

  XZViewController *viewVc = [[XZViewController alloc] init];
      viewVc.view.backgroundColor = [UIColor redColor];
      self.window.rootViewController = viewVc;   // 红色的view就添加到窗口上了

    [self.window makeKeyAndVisible];

================================================

1. ===控制器view加载过程================================

注:下图中从storyboard到empty view这一步骤忽略了判断xib这一步骤。

创建控制器view的几种方式

-----------------------------------------------------------------------------------------------------------------------------

创建控制器view的几种方式

2. ===控制器view的生命周期===============================

创建控制器view的几种方式

3. ===内存警告时控制器view的处理============================

创建控制器view的几种方式

-----------------------------------------------------------------------------------------------------------------

补充几点:

1. 控制器的view是延时加载的(用到时才加载);

2. 当用到view,可是view是nil的时候,就会调用 -(void)loadView 方法  ( loadView是用来自定义控制器view的,比如自定义控制器的view为UIImageView、UITableView等 )。

3. 可以用 isViewLoaded 方法判断一个UIViewController的view是否加载。