更改根控制器会导致视图旋转到正确的位置



首先,我想说这个问题并不能解决我的问题:设置RootViewController时的方向问题

我的 ipad 应用程序只能在横向模式下工作。更改根控制器时,新情节提要会正确显示。但是,它以纵向模式显示,然后旋转到正确的方向。如何在更改根控制器之前指定方向或告诉情节提要默认以横向显示?动画刚结束,视图的旋转就非常丑陋。

此外,左侧和右侧的景观在项目属性中设置。

这是我更改根视图控制器时的代码。

UIStoryboard *editorStoryboard = [UIStoryboard storyboardWithName:@"EditorStoryboard" bundle:nil];
UISplitViewController *editorViewController = [editorStoryboard instantiateInitialViewController];
UINavigationController *navigationController = [editorViewController.viewControllers lastObject];
editorViewController.delegate = (id)navigationController.topViewController;

AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
[UIView transitionWithView:appDelegate.window duration:0.5 options: UIViewAnimationOptionTransitionFlipFromLeft animations:^{
    appDelegate.window.rootViewController = editorViewController;
} completion:nil];

您是否尝试覆盖

首选界面方向演示

对于新的根视图控制器?像这样:

-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationLandscape
}

这来自 iOS 视图控制器编程指南

编辑:好的,尝试摆脱动画怎么样?

相关内容

  • 没有找到相关文章

最新更新