【发布时间】:2015-03-18 09:01:31
【问题描述】:
我有三个控制器,每个控制器在导航栏上都有不同的样式
Controller A:白色导航栏,透明状态栏(让内容可见),通过navbar上自定义bg图片实现
Controller B:白色导航栏,白色状态栏,通过navbar自定义bg图片实现
控制器 C:导航栏被隐藏,只有自定义透明视图和按钮
标准用例是 A > B > C 然后再返回
问题是只有一个导航栏对象,当我更新它的可见性或背景图像时,它适用于所有视图控制器。因此,当我从 A 转到 B 时,状态栏在转换过程中变为白色。当我从 B 转到 C 时,即使 B 仍然可见,导航栏也会消失(或者在它消失后,这取决于我是在 viewWillAppear 还是 viewDidAppear 中更改导航栏)。
我的目标是为所有控制器提供“单独的”导航栏样式,这样它就不会在转换过程中发生变化,但是新控制器会滑入它自己的导航栏,而旧控制器会在其导航栏样式不变的情况下消失。
如果不使用我自己的 UINavigationController 实现,这样的事情是否可能实现?
【问题讨论】:
标签: ios swift uinavigationcontroller uinavigationbar