UINavigationController 在 iOS7 中使用自定义转换委托隐藏导航栏
Posted
技术标签:
【中文标题】UINavigationController 在 iOS7 中使用自定义转换委托隐藏导航栏【英文标题】:UINavigationController hiding navbar with custom transition delegate in iOS7 【发布时间】:2014-03-31 15:48:52 【问题描述】:我有一个带有两个视图控制器的 UINavigationViewController。根视图控制器需要隐藏导航栏,而在第二个视图控制器中,导航栏是可见的。
我使用 UIViewControllerAnimatedTransitioning 实现了自定义过渡
当我推动第二个视图时,一切都很好。但是,当我弹出视图并返回根时,根控制器框架中有一个跳转。它的动画就像它有一个导航栏一样,当动画完成时,框架会重新调整为全屏。
这样做的正确方法是什么?默认过渡不显示此问题。
【问题讨论】:
【参考方案1】:两种简单的修复方法:
从导航控制器中完全隐藏导航栏,并将自定义导航栏添加到第一个屏幕,独立于导航控制器。
只让第一个屏幕在导航控制器中,并创建到第二个屏幕的自定义过渡,不使用导航控制器的推送,而是自己实现推送动画。
【讨论】:
谢谢。我开始考虑这些选项。只是想确保我不会错过没有他们的方法。以上是关于UINavigationController 在 iOS7 中使用自定义转换委托隐藏导航栏的主要内容,如果未能解决你的问题,请参考以下文章
在 UINavigationController 内的 UITabBarcontroller 中添加 UINavigationController?
从嵌入在 UINavigationController 中的一个视图控制器到另一个 UINavigationController
(Swift) 在嵌套在 Main UINavigationController 中的 UINavigationController 和 UITabController 之间切换
关闭 UINavigationController 并呈现另一个 UINavigationController
带有主 UINavigationController 和详细 UINavigationController 的 UISplitViewcontroller