0

我正在尝试使用 iOS6 自动旋转混乱。

我已经查看了几乎所有与之相关的 SO 问题,无论我尝试什么,我都无法按照我的需要进行轮换。

该应用程序使用故事板,布局如下:

Navigation controller ---> Root view controller ---> Tab view controller ---> View controller ---> Landscape view controller.

当我旋转模拟器时,视图控制器会自动旋转,但是当回到前一个视图(设置为纵向)时,视图变为横向,而它应该是纵向的。如果我将模拟器旋转回来,视图会再次自动旋转为纵向,但这应该是自动完成的!

我已经实现(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation并且它不会在我放入的任何视图控制器中被调用。

我对 NavigationController 进行了子类化以返回topViewController's shouldAutoRotatesupportedInterfaceOrientations并且preferredInterfaceOrientationForPresentation在旋转模拟器时自动旋转似乎有效,但preferredInterfaceOrientationForPresentation从未完成它的工作。

有人对此有解决方案吗?

4

1 回答 1

0

看起来苹果已经取消了将视图推送到特定方向的功能。preferredInterfaceOrientationForPresentation确实会被调用,但只有在弹回或呈现视图控制器时才会被调用。我不得不展示我的横向视图而不是推动它,并设置shouldAutoRotate= NO。

请参阅:在 iOS6 中,当推送到堆栈时强制 ViewController 到某个 interfaceOrientation 时遇到问题,以了解更多详细信息。

于 2013-05-28T09:06:01.897 回答