1

当 Xcode 更新到 v4.5 时,我正在开发一个 splitView 项目。从那时起,自转就完美无缺。更新后,自动旋转仅适用于 iOS 6。在 iOS 5.1 上,我是纵向堆栈。我已经阅读了所有可能的解决方案,但似乎没有什么能够解决我的问题。以下是我到目前为止所做的:

检查所有方向都在我的 plist 中。替换(BOOL)shouldAutorotateToInterfaceOrientation:

- (BOOL)shouldAutorotate
{
    return TRUE;
}

- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskAll;
}

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
    return UIInterfaceOrientationLandscapeRight;
}

我在应用程序委托中添加了以下代码段

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
    {
        return (UIInterfaceOrientationMaskAll);
    }

我在另一个答案中显示了下面的代码片段我如何不确定如何在 splitView 控制器中实现它

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
   ...
   window.rootViewController = topLevelViewController;
   ...
}

有人可以帮我解决这个问题吗?

4

1 回答 1

2

您需要保留 iOS 5 中的方法:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return YES;
}

继续支持 iOS 5。因此,为 iOS 6 保留新的,为 iOS 5 保留旧的。请注意,要在 iOS 5 中旋转 UISplitView,所有封闭的视图控制器都必须具有上述方法。

于 2012-10-06T12:46:17.020 回答