我有一个 iOS 应用程序,在 UINavigationController 中设计。然而,其中一个推送的视图控制器需要全屏视图,顶部没有导航栏。(要返回,只有一个小的圆形按钮)。但是,我尝试过的任何“隐藏”导航栏(navigationCtl.navigationBar.hidden=TRUE)的方法都会给我留下难看的伪影——在视图被推送之前调用(在 viewDidLoad 或 viewWillAppear 中)会导致之前的视图控制器栏左滑动画开始时闪烁白色。类似地,在 viewDidAppear 中调用它会在第二个视图的顶部留下一个白条,同时还有几个向下推的子视图。有什么办法可以让新视图像往常一样滑过,但是当它出现时,顶部根本没有导航栏?
请注意,为了帮助谷歌,这里的问题基本上是:
如何在两个 UIViewController 之间进行动画处理,一个在顶部有导航栏,另一个在顶部没有导航栏。那么,如何从带有导航栏的 UIViewController 导航到不带导航栏的 UIViewController - 避免可怕的闪烁。
Ev 在下面给出了惊人的答案……太棒了。