?创建和管理视图。
?管理视图上显示的数据。
?设备方向变化,调整视图大小以适应屏幕。
?负责视图和模型之间的数据及请示的传递。
1、 alloc 创建对象,分配空间
2、init (initWithNibName) 初始化对象,初始化数据
3、loadView 从nib载入视图 ,通常这一步不需要去干涉。除非你没有使用xib文件创建视图
4、viewDidLoad 载入完成,可以进行自定义数据以及动态创建其他控件
5、viewWillAppear 视图将出现在屏幕之前,马上这个视图就会被展现在屏幕上了
6、viewDidAppear 视图已在屏幕上渲染完成
当一个视图被移除屏幕并且销毁的时候的执行顺序,这个顺序差不多和上面的相反
1、viewWillDisappear 视图将被从屏幕上移除之前执行
2、viewDidDisappea 视图已经被从屏幕上移除,用户看不到这个视图了
3、dealloc 视图被销毁,此处需要对你在init和viewDidLoad中创建的对象进行释放
创建一个属性:@property(nonatomic ,retain)RootViewController *rootVC;
1.创建一个rootViewController对象
_rootVC =[[RootViewController alloc] init];
2.给indow设置根视图控制器
_window.rootViewController = _rootVC;
[_rootVC release];
vc的初始化方法,这个方法一般自己就会调用了,不需要我们再额外的去调用,会初始化一些容器,比如数组,字典
-(instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{
self =[super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.arr = [NSMutableArray array];
}
//打印方法名
NSLog(@"%s", __FUNCTION__);
return self;
}
-(void)loadView{
// super调用父类
[super loadView];
NSLog(@"%s", __FUNCTION__);
// self.view 的加载
}
如果想重写父类的方法,首先要先用super去调用父类的方法,这样可以保证原功能不变,然后在方法里再写新的功能
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
self.view.backgroundColor =[UIColor yellowColor];
NSLog(@"%s", __FUNCTION__);
for (int i =1; i<4; i++) {
UITextField *textFieldi =[[UITextField alloc] initWithFrame:CGRectMake(100, 100+100*i, 150, 40)];
textFieldi.delegate =self;
textFieldi.layer.borderWidth =2;
textFieldi.layer.cornerRadius =10;
[self.view addSubview:textFieldi];
[textFieldi release];
}
// 辅一个button
UIButton *button =[UIButton buttonWithType:UIButtonTypeSystem];
button.frame =CGRectMake(100, 500, 150, 40);
[button setTitle:@"下一页" forState:UIControlStateNormal];
[button setTintColor:[UIColor blackColor]];
[self.view addSubview:button];
[button addTarget:self action:@selector(click:) forControlEvents:UIControlEventTouchUpInside];
button.layer.borderWidth =2;
button.layer.cornerRadius =10;
}
原代码:
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
NSLog(@"%s", __FUNCTION__);
}
原代码:
-(void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
NSLog(@"%s", __FUNCTION__);
}
原代码:
-(void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
NSLog(@"%s", __FUNCTION__);
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/mltianya/article/details/47183533