我的 iOS 应用程序是以纵向格式构建的,我想保持这种方式。但是有 1 个屏幕,我只想在横向,而不是纵向,但不知道该怎么做。
有什么可以建议的吗?
非常感激
我的 iOS 应用程序是以纵向格式构建的,我想保持这种方式。但是有 1 个屏幕,我只想在横向,而不是纵向,但不知道该怎么做。
有什么可以建议的吗?
非常感激
首先,您应该在 Xcode 项目摘要中的 Supported Interface Orientation 上设置所有方向。然后在您的 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 或其他。