我有一个带有一个NavigationController和4个UIViewController的应用程序。 我想在UIInterfaceOrientationPortrait中有3个UIViewController,在Landscape模式下有一个UIViewController。当视图出现时,横向方向应立即出现。不幸的是,只有当我转动设备时模式才会改变。 如果不旋转设备,我该如何立即更改为横向?
这是我的NavigationController.m
的代码-(NSUInteger)supportedInterfaceOrientations
{
return [self.topViewController supportedInterfaceOrientations];
}
- (BOOL)shouldAutorotate
{
return [self.topViewController shouldAutorotate];
}
这是肖像UIViewcontroller.m
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
对于Landscape UIViewController.m:
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskLandscapeRight;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
// (iOS 6)
// Force to portrait
return UIInterfaceOrientationLandscapeRight;
}
提前感谢您的帮助!