忽略有关分离的ViewControllers的警告

时间:2014-09-23 13:53:48

标签: ios objective-c uiviewcontroller storyboard warnings

我正在从Storyboard加载ViewController,如下所示:

SSContentViewController* contentViewController =
    [[UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil]
    instantiateViewControllerWithIdentifier:@"settingsViewController"];

并将其添加到我的ViewController数组中:

[self.viewControllers addObject:contentViewController];
在SettingsViewController里面我有一个segue,它提供了一个模态视图控制器。如果我执行此segue,我会得到一个"不鼓励在分离的视图控制器上呈现视图控制器" - 在控制台输出中进行警告。

但它没有任何问题。一切都按预期工作。忽略这个警告是否安全?

编辑:

问题是我执行segue的ViewController被添加到我的RootViewController中:

[rootVC.view addSubview:viewController.view];

所以我知道它是分离的。但即使有了这个警告,事情也会按照他们的意愿运作,不会产生视觉错误等......

1 个答案:

答案 0 :(得分:0)

你应该使用presentViewcontroller和dismissviewcontroller来避免这种情况。

而不是添加使用:

[self.view.window.rootViewController presentViewController:contentViewController animated:YES completion:nil];

从模型视图使用以下来解雇:

[self dismissViewControllerAnimated:YES completion:nil];

编辑01: 对于帧速率下降尝试如下:

 [picker dismissViewControllerAnimated: YES completion:^{

        [self performSelector:@selector(reinit) withObject:nil afterDelay:2];

    }];