我有一个应用程序,它有一个rootViewController和几个子视图。我想将屏幕方向锁定为除了一个以外的所有视图的纵向。一个视图是一个UIPageViewController,它显示了几个Web视图,它需要是横向的。
我可以使用viewDidLoad中的以下代码强制它进入横向模式:
NSNumber *value = [NSNumber numberWithInt:UIDeviceOrientationLandscapeLeft];
[[UIDevice currentDevice] setValue:value forKey:@"orientation"];
我似乎无法阻止视图在旋转时转换回纵向。我需要将其锁定为横向模式。
以下代码似乎无法阻止轮换:
- (BOOL)shouldAutorotate {
return NO;
}
- (NSUInteger)supportedInterfaceOrientations {
return (UIInterfaceOrientationMaskLandscape);
}
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{
return UIInterfaceOrientationLandscapeLeft;
}
我定位7.1及以上。我错过了什么?