0

我正在为 iPad 开发一个应用程序(鼓机),我有一个用户界面的草稿。iOS 6.1模拟器界面OK:

iOS 6.1 上的界面

但它在 iOS 5.1 模拟器中转了 90°:

iOS 5.1 上的界面

这就是我调用视图的方式(在 stackoverflow 成员的帮助下)

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{    
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.viewController = [[XDrumViewController alloc] initWithNibName:@"XDrumViewController" bundle:nil];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
 }

如何解决?

4

1 回答 1

2

您可能没有定义

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation;

在 iOS < 6 上需要这样做才能使自动旋转工作(请参阅此处)。为了快速测试,定义:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
    return UIInterfaceOrientationIsLandscape(toInterfaceOrientation);
}

在您的视图控制器中。这将只为横向启用自动旋转(即,它将强制您的控制器横向)。

于 2013-03-02T11:19:56.633 回答