controller
创建控制器
- 直接创建
MJViewController *mj = [[MJViewController alloc] init]; - 指定xib文件来创建
MJViewController *mj = [[MJViewController alloc] initWithNibName:@"MJViewController" bundle:nil]; - 通过storyboard
- 先加载storyboard文件(Test是storyboard的文件名)
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Test" bundle:nil]; - 接着初始化storyboard中的控制器
初始化“初始控制器”(箭头所指的控制器)
MJViewController *mj = [storyboard instantiateInitialViewController]; - 通过一个标识初始化对应的控制器
MJViewController *mj = [storyboard instantiateViewControllerWithIdentifier:@”mj"];
- 先加载storyboard文件(Test是storyboard的文件名)
view的创建
// 如果描述控制器View的xib跟控制器的类名相同,就会去加载
// 只有控制器的init方法底层会调用initWithNibName:bundle:
// 只要通过initWithNibName:bundle:初始化控制器,并且nibName为nil,就会执行以下几步。
// XMGViewController类型
// 1.寻找有没有跟控制器类名同名但是不带Controller的xib,如果有就会去加载(XMGView.xib)
// 2.寻找有没有跟控制器类名同名的xib,如果有就会去加载(XMGViewController.xib)
// 3.如果都没有找到,创建空的view,
