2014-09-21 34 views
0

這只是我或所有人都觀察到的嗎?看起來在XCode6/iOS8 sdk中,「back」viewController的viewWill/DidAppear:在「front」之後調用並呈現viewController的動畫消息被彈出。查看將會在再次出現時調用

我記得清楚在XCode5/iOS7 sdk中這兩個在重新出現時沒有被調用。

我創建了一個全新的測試項目(主/模板),只添加6行代碼:

-(void)viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    NSLog(@"%@: %@", NSStringFromClass([self class]), NSStringFromSelector(_cmd)); 
} 

-(void)viewDidAppear:(BOOL)animated{ 
    [super viewDidAppear:animated]; 
    NSLog(@"%@: %@", NSStringFromClass([self class]), NSStringFromSelector(_cmd)); 
} 
+0

你的意思是解散模態VC的情況嗎?如果是這樣,那麼我認爲,即使在iOS7中,模式被解除時,調用VC的viewWillAppear和viewDidAppear也會被調用。 – Macondo2Seattle 2014-09-21 19:57:53

+0

我的意思是popViewController。做了popViewController後,重新出現的vc的viewDid/WillAppear:動畫被調用。 – wangii 2014-09-21 20:11:10

回答

0

這一直是因爲它們的推出有史以來viewWillAppear:viewDidAppear:預期的行爲。當視圖... 出現時,他們會被打電話。

+0

不,根據Apple的文檔:'這種方法在接收者的視圖即將被添加到視圖層次結構之前,並且在配置任何動畫以顯示視圖之前調用。「 – wangii 2014-09-21 20:21:34

+0

那是一個錯誤。使用viewdidload和viewdidunload。 – Sirens 2016-05-30 21:44:39

相關問題