显示viewController时出现控制台警告

时间:2013-04-06 11:56:37

标签: ios objective-c console

我正在开发一个应用程序,当向左旋转时显示一个viewController,然后当它向右旋转时,它会显示另一个视图控制器。我的segue的风格是模态的,我正在使用交叉溶解过渡。问题是当我向左旋转然后快速向右旋转时,控制台向我发出警告:

Warning: Attempt to present <SSGraphRightViewController: 0x81159b0> on <UINavigationController: 0x82439a0> while a presentation is in progress!

有没有办法避免这种警告?可能加快过渡时间的加速?

1 个答案:

答案 0 :(得分:2)

您无法从已经呈现的视图控制器中呈现视图控制器,控制台是正确的,因此要么使用不同的segue样式,要么正确处理它。

希望这会有所帮助:What is the difference between Modal and Push segue in Storyboards?

当我在呈现另一个UIViewController时尝试呈现UIViewController时遇到了同样的问题,所以我所要做的就是解除现有的UIViewController,然后呈现新的UIViewController。在你的情况下,这是因为在呈现UIViewController期间发生了快速转换,因此首先解除现有的转换,然后呈现一个新转换。它应该是这样的

- (void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion

在(void)完成块中,将代码呈现给新VC,如下所示:

[yourVC dismissViewControllerAnimated:YES completion:^{ 
//present your new VC here.
}];

希望它有所帮助!!