UIViewController在UIKit中主要功能是用于控制画面的切换,其中的view属性(UIView类型)管理整个画面的外观.大部分控制器类都会继承UIKit的UIViewController基类,该基类中包含了大量方法,可以重写这些方法来处理视图的加载、视图显示等各种事件。
包括以下常见的重要重写方法:
- (void)viewDidLoad {
[super viewDidLoad];
//当控制器管理的视图被装载完成后,调用该方法,如果开发者需要在视图装载完成后执行某些代码,即可通过重写该方法完成。重写该方法时不要忘记通过[super ViewDidLoad];代码来调用UIViewController基类的viewDidLoad方法;
}
-(void)viewWillAppear:(BOOL)animated
{
//当该控制器管理的视图将要显示出来时,系统会自动的调用该方法,如果开发者需要在视图将要显示出来的时候执行某些代码,即可通过重写该方法来完成。重写该方法时不要忘记通过[super viewWillAppear:YES];代码来调用UIViewController基类的viewWillAppear:方法;
}
-(void)viewDidAppear:(BOOL)animated
{
//当该控制器管理的视图显示出来时,系统会自动的调用该方法,如果开发者需要在视图显示出来后执行某些代码,即可通过重写该方法来完成。重写该方法时不要忘记通过[super viewDidAppear:YES];代码来调用UIViewController基类的viewDidAppear:方法;
}
-(void)viewWillDisappear:(BOOL)animated
{//当该控制器管理的视图将要隐藏或将要被移除窗口时,系统会自动的调用该方法,如果开发者需要在视图将要隐藏或将要被移除窗口时执行某些代码,即可通过重写该方法来完成。重写该方法时不要忘记通过[super viewWillDisappear:YES];代码来调用UIViewController基类的viewWillDisappear:方法;
}
-(void)viewDidDisappear:(BOOL)animated
{
//当该控制器管理的视图被隐藏或移除窗口时,系统会自动的调用该方法,如果开发者需要在视图被隐藏或移除窗口的时候执行某些代码,即可通过重写该方法来完成。重写该方法时不要忘记通过[super viewDidDisappear:YES];代码来调用UIViewController基类的viewDidDisappear:方法;
}
-(void)viewDidLayoutSubviews
{
//当该控制器管理的视图把它包含的所有子视图排列完成后,系统会自动的调用该方法,如果开发者需要在它包含的所有子视图排列完成后的时候执行某些代码,即可通过重写该方法来完成。重写该方法时不要忘记通过[super viewDidLayoutSubviews];代码来调用UIViewController基类的viewDidLayoutSubviews方法;
}
-(void)viewWillLayoutSubviews
{
//当该控制器管理的视图将要把它包含的所有子视图排列完成后,系统会自动的调用该方法,如果开发者需要在视图将要把它包含的所有子视图排列完成后,即可通过重写该方法来完成。重写该方法时不要忘记通过[super viewWillLayoutSubviews];代码来调用UIViewController基类的viewWillLayoutSubviews方法;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
//内存不足时调用的方法,开发者可在需要时释放一些暂不会使用的对象,进而释放内存(基本上我都没用过这个方法)
}