2014-09-21 32 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

相关问题