console warning when presenting a viewController
我正在开发一个应用程序,它在向左旋转时显示一个视图控制器,然后向右旋转时显示另一个视图控制器。我的Segue风格是模态的,我使用交叉融合过渡。问题是,当我向左旋转然后快速向右旋转时,控制台会向我发送以下警告:
1 | Warning: Attempt to present <SSGraphRightViewController: 0x81159b0> on <UINavigationController: 0x82439a0> while a presentation is in progress! |
有没有办法避免这个警告?可能加速过渡时间?
您不能从已经显示的视图控制器中显示视图控制器,控制台是正确的,因此可以使用其他样式的segue或正确地处理它。
希望这有帮助:在故事板中,莫代尔和普什塞格有什么区别?
当另一个uiviewcontroller出现时,我试图呈现一个uiviewcontroller时也遇到了同样的问题,所以我所要做的就是去掉现有的uiviewcontroller,然后呈现新的uiviewcontroller。在您的例子中,这是因为在呈现uiviewController时发生了快速的转换,所以首先忽略现有的控制器,然后呈现一个新的控制器。应该是这样的
1 | - (void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion |
在(void)完成块中,输入代码来呈现新的vc,如下所示:
1 2 3 | [yourVC dismissViewControllerAnimated:YES completion:^{ //present your new VC here. }]; |
希望它有帮助!!