在iOS5中没有调用UIViewController设备旋转委托方法

我正在开发一个iPhone应用程序.在这个应用程序中,UIViewController(vc1)呈现另一个UIViewController(vc2). vc1支持纵向和横向方向; vc2仅支持纵向方向.

>当出现vc2时,它会询问vc1:shouldAutorotatetoInterfaceOrientation:并返回YES
2.在iOS5(Beta 7)willRotatetoInterfaceOrientation:,didRotateFromInterfaceOrientation:没有被调用此序列.但是,这在iOS4中运行良好.这是iOS5中的错误吗?

感谢致敬,
迪帕

解决方法

我向Apple报告了一个错误,我收到了以下回复

“Engineering已根据以下信息确定此问题的行为符合预期:

演示行为是正确的 – 如果它在以前的版本中表现不同,那就是一个错误.行为中可以想象的意外变化是关于VC1的解散,它不再获得旋转回调,但它将以纵向布局.

当视图控制器自行调整时,还有其他方法可以确定您的方向.由于各种原因,依赖于旋转回调被证明是有问题的.

通常,viewController旋转回调在两种情况下发生:

>窗口层次结构中视图控制器的设备方向发生变化
>混合界面方向演示. (底部控制器仅支持纵向,设备处于横向,并且呈现支持横向的视图控制器.)然而,这可以说是错误的.

尝试在iOS 5中使用viewWillLayoutSubviews:“

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...