我正在为基于导航控制器的应用程序制作自定义导航栏,该应用程序的默认navigationBar隐藏属性设置为true。使用默认导航栏是不可能的,因为它导致了很多问题,因为我需要自定义它的程度(复杂的动画,高度的变化等)。
我目前正在向UIViewController的视图中添加我的“导航栏”,它只是一个UIView。当然,当我转换到新视图时,旧的导航栏会消失,下一个视图控制器没有任何导航栏。我想做的是让我的导航栏更像是默认的UINavigationController导航栏,它在VC过渡期间保持固定在顶部,新旧元素交叉淡入淡出。如何在不使用UINavigationBar的情况下完成此效果?
非常感谢!
答案 0 :(得分:0)
您应该在顶部使用自定义容器控制器和自定义导航栏,并在下面添加子视图控制器视图的视图。该子视图控制器可以是导航控制器,其导航栏被隐藏以处理转换。您必须让传入的控制器(或我猜的传出)向容器控制器发送一条消息,告诉它执行导航栏的交叉淡入淡出。