不鼓励在分离的视图控制器上呈现视图控制器

Ale*_*kin 20 xcode ios amslidemenu

我正在使用带有故事板的xcode 5.1.1.我在主菜单上有一个按钮,它会使用此代码弹出到另一个视图控制器

VC *secondVC = [[VC alloc] init];
[self presentViewController:secondVC animated:YES completion: nil];
Run Code Online (Sandbox Code Playgroud)

我有这个代码的后退按钮

[self dismissViewControllerAnimated:YES completion: nil];
Run Code Online (Sandbox Code Playgroud)

当我弹出secondVC xcode给我的错误:

不鼓励在分离的视图控制器上呈现视图控制器<UINavigationController: 0x8c94510>.

我也有旋转问题,它无法正常工作.

Eri*_*ord 18

如果您尝试在viewWillAppear中推送,显示或弹出视图控制器,则会出现此警告.我不知道你的代码中有什么,所以很难确定你的问题,但如果你试图在viewWillAppear中显示新的视图,请尝试使用它.

[self performSelector:@selector(yourMethod)
               withObject:nil afterDelay:0.0];
Run Code Online (Sandbox Code Playgroud)


小智 10

尝试从viewWillAppear呈现UIAlertController时,我遇到了类似的情况.由于在Swift中不存在performSelector,我以这种方式包裹了我的调用:

dispatch_async(dispatch_get_main_queue()), {
    presentYourVCHere;
});
Run Code Online (Sandbox Code Playgroud)


小智 9

viewDidAppear:改为呈现控制器.


Fed*_*olo 7

尝试从rootVC推送:

[self.view.window.rootViewController.navigationController pushViewController:YOUR_VIEW_CONTROLER animated:YES];
Run Code Online (Sandbox Code Playgroud)