禁止自动定位到横向,可以手动将一个控制器设置为横向

时间:2013-03-05 04:40:23

标签: iphone ios objective-c orientation

我禁止整个应用程序定位到景观。但我想只允许一个视图控制器--- MPMoviePlayerController自动旋转,我知道我可以手动旋转视图,但状态栏仍然是纵向。

我已经设置了info.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
    <string>UIInterfaceOrientationPortrait</string>
    <string>UIInterfaceOrientationPortraitUpsideDown</string>
</array>
</plist>

我不希望整个应用都能自动定位。

所以我的问题是:

  1. 我是否可以只允许此视图自动定位环境(我已经禁止将应用定位到横向)。

  2. 如果1为NO,那么是否仍然将状态栏设置为横向模式?

  3. 感谢

1 个答案:

答案 0 :(得分:0)

在横向模式下设置状态栏,如下所示:

[[UIApplication sharedApplication] setStatusBarOrientation:UIDeviceOrientationLandscapeLeft animated:NO]

并为您的状态栏旋转。尝试如下:

-(BOOL)shouldAutorotate
{
    return YES;
}
- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscape;
}

还要在设备上测试它。