iOS:presentViewController错误不建议在分离的视图控制器上显示视图控制器

时间:2017-05-10 22:49:36

标签: ios objective-c iphone xcode8

我正在尝试以编程方式呈现viewController:

- (void)viewDidLoad {
    [super viewDidLoad];
    NewViewController *vc = [[NewViewController alloc] init];
    [self presentViewController:vc animated:YES completion:nil];
}

但是我收到了这个错误:

Presenting view controllers on detached view controllers is discouraged 

而且我的iPhone上也出现黑屏。

这就是我的故事板和iPhone的样子:

enter image description here 任何你知道我为什么会收到这个错误以及为什么我会得到黑屏?

我真的很感谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您正尝试在viewDidLoad中展示视图控制器。在从Storyboard加载View Controller的视图时调用此方法。目前尚未显示视图控制器,因此从应用程序的视图中分离

由于此错误,您可能会出现黑屏。

要解决此问题,请勿在{{1​​}}中调用presentViewController,请在显示视图后再调用此问题。例如,您可以在视图控制器的viewDidLoad方法中调用它。