我得到了一个项目,该项目是由不再在这里工作的其他人开始的。我有一个包含一些 UIViewControllers 的 UITabBarController。如果应用程序在 iOS 6 上运行,一切运行正常,但是一旦我在 iOS 5 上运行它,所有 UIViews 都会旋转 90 度并给出大约 -100 到 -300 的原始值
我已经能够遍历 tabBar 的所有视图控制器并设置
myView.transform = CGAffineTransformMakeRotation(0.0);
myView setFrame:CGRectMake(0,0,1024,748);
UITabBarController 上的初始视图控制器显示正确,但是,如果我尝试启动模式视图控制器,一切都会再次塞满。包括模态。
对于如何一劳永逸地解决这个问题,我已经没有什么想法了。我在旋转视图的代码中找不到任何内容。
我可以推断出在 iOS 6 上,持有 UITabBarController 的主视图的第一个子视图是 UILayoutContainerView 但在 iOS 5 上,第一个子视图属于 UIView 类
如果这是 iOS5 不支持 UILayoutContainerView 的问题,我现在如何使应用程序向后兼容?
注意:我们仅支持横向(右/左)并且仅在 iPad 上。另外,我注意到如果用户在初始化 UITabBarController 及其子控制器之前旋转应用程序。一切正常。即使您重新运行应用程序并且不再旋转,仍然有效。
提前致谢