0.3.4.UIViewController

如何创建一个控制器

控制器常见的创建方式有以下几种

1.通过storyboard创建

2.直接创建

UIViewController *vc = [[UIViewController alloc] init];

3.指定xib文件来创建

UIViewController *vc = [[UIViewController alloc] initWithNibName:@"UIViewController" bundle:nil];

//底层调会调用initWithNibName:bundle:
UIViewController *vc = [[UIViewController alloc] init];
// 加载跟类名相同的xib
    // 如果描述控制器View的xib跟控制器的类名相同,就会去加载
    // 只有控制器的init方法底层会调用initWithNibName:bundle:
    // 只要通过initWithNibName:bundle:初始化控制器,并且nibName为nil,就会执行以下几步。
    // ViewController类型
    // 1.寻找有没有跟控制器类名同名的xib,如果有就会去加载(ViewController.xib)
    // 2.如果都没有找到,创建空的view,

loadView方法的作用

// loadView作用:自定义控制器的view

// loadView什么时候调用:第一次使用控制器的view的时候调用

// 注意:在这个方法中如果没有自定义view,就不能获取控制器的view

// 一旦重写了这个方法,就不要调用[super loadView]
// 如果重写了这个方法,就不会去加载storyboard描述的控制器的View
- (void)loadView
{
    self.view.backgroundColor = [UIColor redColor];

//    // 创建控制器view
//    self.view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];
//    
//    self.view.backgroundColor = [UIColor purpleColor];
}

viewDidLoad 控制器的View加载完成的时候调用

// 在viewDidLoad中打印控制器的尺寸不准确,通常在viewDidAppear

results matching ""

    No results matching ""