0

我开发了一个仅限 iPhone 的应用程序,现在我正在使它成为通用的。在 iPhone 上它将以纵向运行,而在 iPad 上我想强制它以横向运行。

我面临一个奇怪的问题,因为我为 iPad 版本创建的所有控制器似乎都是纵向的。我有一个主控制器,然后我通常会创建更多控制器并将它们的视图添加到主控制器的视图中。后一种视图是使用适合纵向而不是横向的框架创建的。所有这些控制器都实现了-shouldAutorotateToInterfaceOrientation:-preferredInterfaceOrientationForPresentation方法来强制横向模式。可能这还不够。

此外,我最大的问题是我最近尝试创建翻转视图动画:

[UIView transitionFromView:self.view
                    toView:about.view
                  duration:1
                   options:UIViewAnimationOptionTransitionFlipFromBottom
                completion:^(BOOL finished){
                }];

当我调用此方法时,新视图将出现在屏幕上,但显然它已旋转。可视化问题

橙色条应该出现在视图的顶部,并且应该占据所有可见空间。似乎它处于横向模式,但添加到主视图时旋转错误。

你能给我提示来解决这个问题吗?

4

1 回答 1

0

显然,要让 iPad 上的工作正常,您必须使用 aUINavigationController作为主窗口的根视图控制器。否则你会遇到这样的问题。事实上,将导航控制器设置为根控制器已经完全解决了我在处理旋转时的所有问题。

于 2013-05-17T23:44:50.140 回答