呈现视图控制器中的横向模式

时间:2015-02-23 17:53:26

标签: ios objective-c iphone uinavigationcontroller

我有一个应用程序,其中只允许纵向模式。我正在使用子类qlPreviewController来显示图像的预览。在此允许所有方向。但是当我以横向模式关闭预览控制器时,我的UIView控制器的ui会崩溃。我在UIViewController' viewWillAppear方法中使用以下代码,我的ui变得正确。 如果我使用

-(void)viewWillAppear
{
     UIViewController *c = [[UIViewController alloc]init];
     [c.view setBackgroundColor:[UIColor clearColor]];
     [self.navigationController presentViewController:c animated:NO completion:nil];
     [self performSelector:@selector(delay) withObject:self afterDelay:1.0 ];
}   

-(void)delay
{
     [self.navigationController dismissViewControllerAnimated:NO completion:nil];
}

任何人都可以说出这个的原因以及更好的方法吗

为了限制应用程序仅使用纵向模式,我创建了一个BaseViewController类作为UIViewController的子类,并且只允许使用纵向模式。我在应用程序中创建了所有其他视图控制器作为此BaseViewController的子类。 BaseViewController中的代码是: -

-(BOOL)shouldAutorotate
{


    return FALSE;
}

-(NSUInteger)supportedInterfaceOrientations
{


    return UIInterfaceOrientationMaskPortrait;
}

0 个答案:

没有答案