我正在从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];
所以我知道它是分离的。但即使有了这个警告,事情也会按照他们的意愿运作,不会产生视觉错误等......
答案 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];
}];