我正在使用 Three20 (ack!) 编写的旧代码库。现在我们需要能够将这个应用程序部署到 iOS7 和 iOS6。
大多数情况下,它可以工作,但是当用户点击并导致在视图控制器之间切换时,导航栏在过渡动画期间使用 44 点导航栏绘制,但当动画完成时,它会捕捉到 64 点高。
所以,换一个视角……顺滑……黄油……猛击。洗涤,冲洗,重复。
当您在任何 iOS 7 iPhone 大小的设备上从一种视图切换到另一种视图时,会出现这种颤抖的效果。有趣的是,它只在从一个视图切换到另一个视图时发生,而不是在切换到当前 ViewController 的新实例时发生。
我会显示代码,但我不确定要显示什么代码。
我非常感谢任何指点(很高兴接受 RTFM 评论),我的 Google-fu 这次让我失望了。
视图层次结构看起来像这样: UIScreen TTNavigatorWindow UILayoutContainerView UINavigationTransitionView UIViewControllerWrapperView UIView TTTableView UITableViewWrapperView ...等等...
这是一个three20 问题,其中three20 假设导航栏总是44 点高,但现在不是?
这是一个界面生成器问题,导航栏只能在 44 点创建,我应该在我的代码中很好地处理这个问题吗?
这是一个深奥的 iOS 7 问题,因为导航器位于顶层,它需要定期更改高度?
这是一个文档问题,我的(显然微不足道的)观察能力只是没有在 Apple 文档中看到相关内容吗?
谢谢,
-肯