UIView转换方向错误

时间:2012-06-14 10:36:05

标签: xcode uiview orientation storyboard

我有这个代码(Book1是一个UIViewController类)

Book1 *book = [self.storyboard instantiateViewControllerWithIdentifier:@"Book1ID"];    
[UIView transitionFromView:self.view toView:book.view duration:1 options:UIViewAnimationOptionTransitionCurlDown completion:nil];

ViewController加载但方向错误。它在纵向视图中加载,但我希望它在横向加载。

我已经在Book1中拥有以下代码,但是一旦加载了视图,所有自动旋转似乎都会失败。

 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
return interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight;}

如何在Landscape中加载此视图?

2 个答案:

答案 0 :(得分:2)

我没有发现以前的方法存在问题,但我找到了另一种方法。

这是:

book = [self.storyboard instantiateViewControllerWithIdentifier:@"Book1ID"];
book.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:book animated:YES completion:^(void){}];

特别感谢Aalok Parikh的所有帮助

答案 1 :(得分:0)

所以做如下的事情:

<强>第一

Supported Device Orientations

只需选择这两个方向作为支持的设备方向:)

<强>第二

plist file key entry

现在添加关键图片中的最后一个 Initial interface orientation以及您想要列表中两个横向值的值

<强>第三

现在将以下功能添加到您的所有控制器的.m文件

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}

<强>第四

只需构建并运行您的项目:)

现在您的应用程序仅限于横向模式

Happy Codding:)