Iphone 什么是UINavigationTransitionView

Iphone 什么是UINavigationTransitionView,iphone,cocoa-touch,ios5,rotation,transition,Iphone,Cocoa Touch,Ios5,Rotation,Transition,我试图调试视图中一些奇怪的旋转行为。在查看视图层次结构时,我可以看到旋转发生在UINavigationTransitionView的一个实例中。这是什么观点?它与UINavigationController有关吗 我的层次结构如下所示: MPMovieView UIView UIViewControllerWrappper UINavigationTransitionView UILayoutContainerView UIWindow

我试图调试视图中一些奇怪的旋转行为。在查看视图层次结构时,我可以看到旋转发生在UINavigationTransitionView的一个实例中。这是什么观点?它与UINavigationController有关吗

我的层次结构如下所示:

MPMovieView
  UIView
    UIViewControllerWrappper
      UINavigationTransitionView
        UILayoutContainerView
          UIWindow

苹果经常在公共类中使用私有类来管理内部行为。这就是其中之一。没有名为uinavigationtransionview的公共类。如果你确信是苹果的错,我会去别处寻找这个漏洞,或者提交一份雷达文件。如果你决定继续看你的代码,考虑发布一些代码和你的问题的描述,在这里我们可以帮助。 AFAIK UINavigationTransitionView是一个用于为周围的UINavigationController子视图设置动画的类。它通常包含一个或两个UIViewControllerRapperView,每个都包含实际的UIViewController.view 如果您将UINavigationController子类化并覆盖pushViewControllerAnimated:,您可以在调用[super pushViewControllerAnimated:]前后记录层次结构,您会注意到被推送的VC rect从{0,20,320,480}更改为{-320,20,320,480}
虽然理解它是如何工作的很好,因为它是私有API,但它很可能在iOS版本之间发生变化,所以您不应该基于这种行为来制定轮换解决方案。发布一个带有实际轮换问题的新问题,我们可以帮助您解决它,而无需使用专用API

@davedelong对UIKit了解一点或两点。:-)