iOS檢視的生命週期
阿新 • • 發佈:2019-02-02
進入ViewController
的標頭檔案,檢視這個提供的方法,以下列出一些有關iOS檢視生命週期的幾個方法:
- (void)viewDidLoad
- (void)viewWillAppear:(BOOL)animated
- (void)viewDidAppear:(BOOL)animated
- (void)viewWillDisappear:(BOOL)animated
-(void)viewDidDisappear:(BOOL)animated
那麼這些方法什麼時候執行?執行的順序又是什麼呢?
先給出一段程式碼,然後解釋:
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"viewDidLoad");
}
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
NSLog(@"viewWillAppear");
}
- (void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
NSLog(@"viewDidAppear");
}
- (void )viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
NSLog(@"viewWillDisappear");
}
-(void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
NSLog(@"viewDidDisappear");
}
當我們首次開啟應用,進入該程式碼所在的檢視時,執行的方法是:
viewDidLoad
、viewWillAppear
、viewDidAppear
當我們跳轉到另一個頁面時,執行的方法是:
viewWillDisappear
viewDidDisappear
當我們再次從另一個頁面跳轉到程式碼所在的頁面時,執行的方法好是:
viewWillAppear
、viewDidAppear
當然,viewDidLoad
方法在頁面出現的時候是否執行取決於此時記憶體中的檢視是否還存在。