我正在开发一个应用程序,当向左旋转时显示一个viewController,然后当它向右旋转时,它会显示另一个视图控制器。我的segue的风格是模态的,我正在使用交叉溶解过渡。问题是当我向左旋转然后快速向右旋转时,控制台向我发出警告:
Warning: Attempt to present <SSGraphRightViewController: 0x81159b0> on <UINavigationController: 0x82439a0> while a presentation is in progress!
有没有办法避免这种警告?可能加快过渡时间的加速?
答案 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.
}];
希望它有所帮助!!