首页 文章

在横向启动时,iOS6旋转方法未调用

提问于
浏览
3

让我先说一下应用程序打开后在iOS6中旋转视图时我没有遇到任何问题 . 只有在风景中第一次启动应用程序时,才会出现此问题 . 新的 shouldAutorotatesupportedInterfaceOrientations 方法在启动时都被调用,但是没有调用任何旋转方法,如 willRotateToInterfaceOrientation:duration: . (shouldAutorotate总是返回YES,而supportedInterfaceOrientations总是返回UIInterfaceOrientationMaskAll)

在iOS5中,启动时对景观的“第一”定位是自动完成的 . 有没有解释为什么设备不会在iOS6中调用第一个横向轮换? (我正在检查的视图控制器是窗口/应用程序委托的根控制器) .

在此先感谢您对此的任何帮助和见解 .

2 回答

  • 2

    我想,由于接口实际上没有旋转,所以该方法没有被调用 .

    如果您想根据方向进行一些设置,您是否考虑过使用视图控制器的 intefaceOrientation 属性?

  • 2

    您现在应该使用 viewWillLayoutSubviews 方法而不是 willRotateToInterfaceOrientation:duration: . 原因是因为在许多情况下不能保证调用 willRotateToInterfaceOrientation:duration: .

    这在iOS6 release notes和其他地方都有说明 .

相关问题