0

我有一个 iPad 应用程序,我需要它在加载过程中始终以 ladnscapeLeft 模式加载,之后它可以旋转并响应方向变化并转到任何其他方向。我怎样才能做到这一点?我尝试将 plist.info 文件更改为只有 Landscapeleft,但这会在应用程序的整个生命周期中锁定该方向。

所以澄清一下,应用程序应该只在 ladnscapeLeft 中加载,一旦加载完成,它可以响应其他方向。

4

1 回答 1

-1

您需要覆盖UIViewController旋转事件。这是一个例子:

-(BOOL)shouldAutorotate
{
    return YES;
}
-(NSUInteger)supportedInterfaceOrientations
{
    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
    if (appDelegate.topViewController != nil) {
        return [appDelegate.topViewController supportedInterfaceOrientations];
    } else {
        return UIInterfaceOrientationMaskPortrait;
    }
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
    if (appDelegate.topViewController != nil) {
        return [appDelegate.topViewController preferredInterfaceOrientationForPresentation];
    } else {
        return UIInterfaceOrientationPortrait;
    }
}
于 2013-02-04T18:27:38.047 回答