viewWillAppear未被调用

时间:2015-12-18 07:36:16

标签: ios objective-c

我有一个嵌入导航控制器(NAV1)的视图控制器(VC1)。在其viewWillAppear方法中,我调用模态呈现另一个视图控制器。在一种情况下,我需要向新的视图控制器(VC2)呈现动画,而在另一种情况下,它应该在没有动画的情况下呈现。 VC2也嵌入在自己的导航控制器(NAV2)中。

当动画标志设置为TRUE时,一切正常。当我将标志设置为FALSE时,出现了一些错误: 1.我在控制台中收到以下警告:不建议在分离的视图控制器上显示视图控制器 2.当我在调用dismissViewControllerAnimated:FALSE completion:nil后从VC2返回时,VC1的viewWillAppear方法不会被调用。如果动画标志设置为TRUE,则会调用它。

在VC1中:

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];

    [self performSelector:@selector(importStuff:)
                           withObject:nil];

}

-(void)importStuff
{
//instatntiate VC2
//instantiate NAV2

[Utility presentViewController:pNavController
            fromViewController:self
                      animated:FALSE
                    completion:nil];

// the above method calls the presentViewController:animated:completion: method
} 

IN VC2:

[Utility dismissViewController:self
                      animated:FALSE
                    completion:nil];

上面的方法调用dismissViewControllerAnimated:方法。

0 个答案:

没有答案
相关问题