viewController,视图控制器
创建一个RootViewController类,使它继承于UIViewController
RootViewController.m
#import "RootViewController.h"
@interface RootViewController ()
@end
@implementation RootViewController
根视图控制器的执行流程(七步).
1. 初始化,这个方法自动执行,不需要任何的调用,也不会写出来,我们会在这个方法里初始化一些容器(例如:数组,字典,集合),但是不要在此初始化视图.
- (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil nibBundleOrNil];
if (self ) {
NSLog (@"%s" , __FUNCTION__);
}
return self ;
}
2. 加载视图.
- (void )loadView {
[super loadView];
NSLog (@"%s" , __FUNCTION__);
}
3. 视图加载完毕.
- (void )viewDidLoad {
[super viewDidLoad];
NSLog (@"%s" , __FUNCTION__);
}
4. 视图将要出现.
- (void )viewWillAppear:(BOOL )animated {
[super viewWillAppear:animated];
NSLog (@"%s" , __FUNCTION__);
}
5. 视图已经出现.
- (void )viewDidAppear:(BOOL )animated {
[super viewDidAppear:animated];
NSLog (@"%s" , __FUNCTION__);
}
6. 视图将要消失.
- (void )viewWillDisappear:(BOOL )animated {
[super viewWillDisappear:animated];
NSLog (@"%s" , __FUNCTION__);
}
7. 视图已经消失.
- (void )viewDidDisappear:(BOOL )animated {
[super viewDidDisappear:animated];
NSLog (@"%s" , __FUNCTION__);
}
8. 模拟内存警告.
- (void )didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
NSLog (@"%s" , __FUNCTION__);
NSLog (@"内存警告" );
}
注意:1. 视图控制器从初始化方法开始执行,然后是loadView,初始化一个和屏 幕等大的view,接下来是viewDidLoad,这个方法里我们写视图控件的创建,然后是viewWillAppear,viewDidAppear,视图控制器消失的时候会执行viewWillDisappear和viewDidDisappear;
2. 前三个方法只会执行一次,而视图消失和出现只要状态符合,就会执行.
AppDelegate.m
#import "AppDelegate.h"
#import “RootViewController.h” // 设置谁为根视图控制器,就引入谁的头文件.
- (BOOL )application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
1. 创建一个视图控制器的对象.
RootViewController *rootVC = [[RootViewController alloc] init];
2. 设置根视图控制器.
self .window .rootViewController = rootVC;
3. 释放
[rootVC release];
这里写代码片