在我的 UIViewController
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskLandscape;
}
-(BOOL) shouldAutorotate {
return NO;
}
我应该只支持 iOS 6 中的横向方向。但它不起作用。它仍然可以自动旋转。
如何修复在 iOS 6 中禁用自动旋转?
在我的 UIViewController
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskLandscape;
}
-(BOOL) shouldAutorotate {
return NO;
}
我应该只支持 iOS 6 中的横向方向。但它不起作用。它仍然可以自动旋转。
如何修复在 iOS 6 中禁用自动旋转?
找到了解决方案。
我正在使用带有 UINavigationController 的 viewcontroller。所以,我需要更改 UINavigationController 中的supportedInterfaceOrientations。
@interface UINavigationController (autorotate)
@end
@implementation UINavigationController (autorotate)
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskLandscape;
}
-(BOOL) shouldAutorotate {
return YES;
}
@end
如果您的整个应用程序只支持横向,您可以跳过子类并在 Info.plist 中将支持的界面方向设置为横向(左)和横向(右)