为什么这个UIViewController总是以纵向模式显示?

时间:2012-10-02 08:08:48

标签: objective-c ios

当我的设备处于横向模式并且我以模态方式呈现视图控制器时,它始终以纵向模式显示,这就是我想要的。

但是,我不明白为什么其他视图(模态显示)总是以横向模式显示(如果设备的当前方向是横向)。我使用的代码对于我的所有视图控制器都是相同的,xib文件方向属性始终是Portrait。

这就是我推动视图控制器工作的方式(它从不以横向模式显示):

 - (IBAction)showImport:(id)sender
    {
        CMImportExportViewControlleriPhone *importController = [[CMImportExportViewControlleriPhone alloc] initWithNibName:@"Import-Export-iPhone" bundle:nil];
        [importController setLayoutViewController:self];
        //[importController setDelegate:self];
        [self presentModalViewController:importController animated:YES];
        [importController release];
    }

感谢

1 个答案:

答案 0 :(得分:0)

如果这是初始视图控制器,并且您在plist文件中有设置以纵向模式启动应用程序,那么它将以纵向模式显示,而不管您的设备方向是什么。当您将设备置于景观模式并呈现新的视图控制器时,它将是景观状态,因为它遵循状态栏方向!在呈现新视图控制器之前,尝试将状态栏重置为纵向模式,然后呈现新的视图控制器。它将以纵向模式呈现!我在iOS 6.0中遇到了类似的问题。