1

我有一个应用程序,其中包含多个具有不同视图控制器的视图。一种是地图视图,另一种是我希望在纵向/横向中都可用的网络视图。在我只是在我的所有视图控制器中将所有这些代码锁定为纵向的代码之前:

- (BOOL)shouldAutorotateToInterfaceOrientation:    (UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

但是当我更新到 Xcode 4.5/IOS6 时,它们突然都可以翻转了。所以现在我决定保持地图视图/网络视图可翻转。但我有一个菜单,我想锁定纵向,我不使用上面的代码,也不使用:

}

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

有任何想法吗?

预先感谢!

4

1 回答 1

0

您可以从 Project -> Targets -> Project Name -> Summary -> Supported Interface Orientations -> Portrait 中的项目设置中执行此操作。

或者,您可以将以下内容添加到您的 appdelegate -

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{
return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;

}

并将以下内容添加到您的视图控制器 -

- (NSUInteger)supportedInterfaceOrientations
{
//    UIInterfaceOrientationMaskLandscape;
//    24
//
//    UIInterfaceOrientationMaskLandscapeLeft;
//    16
//
//    UIInterfaceOrientationMaskLandscapeRight;
//    8
//
//    UIInterfaceOrientationMaskPortrait;
//    2

//    return UIInterfaceOrientationMaskPortrait;
//    or
return UIInterfaceOrientationMaskPortrait;
}

-(BOOL) shouldAutorotate
{
    return YES;
}
于 2012-12-25T04:56:21.307 回答