我的iOS应用程序是以纵向格式构建的,我希望保持这种状态。然而,有一个屏幕,我想在仅景观,而不是肖像,但无法想象如何做。
有什么可以建议的吗?
非常感谢
答案 0 :(得分:0)
首先,您应该在Xcode项目摘要中的支持接口方向上设置所有方向。然后在你的appDelegate:
- (NSUInteger) application: (UIApplication*) application supportedInterfaceOrientationsForWindow: (UIWindow*) window
{
NSUInteger orientations = UIInterfaceOrientationMaskAll;
if (self.window.rootViewController)
{
UIViewController* rootViewController = self.window.rootViewController;
UIViewController* presented;
if ([rootViewController isKindOfClass: [UINavigationController class]])
{
presented = [[(UINavigationController*) rootViewController viewControllers] lastObject];
}
else
{
presented = (UIViewController*) rootViewController;
}
orientations = [presented supportedInterfaceOrientations];
}
return orientations;
}
然后在每个UIViewController中:
- (NSUInteger) supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
您需要其他方向,您应该从UIInterfaceOrientationMaskPortrait更改为UIInterfaceOrientationMaskLandscapeLeft或其他。