首先,我想说这个问题不能解决我的问题:Orientation problem when I set a 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];
答案 0 :(得分:0)
您是否尝试覆盖
preferredInterfaceOrientationForPresentation
用于新的根视图控制器?像这样:
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationLandscape
}
来自View Controller Programming Guide for iOS
编辑:好的,试着摆脱动画怎么样?