我有一个导航控制器,我不想用完整个屏幕。特别是,我想在屏幕顶部的栏中放置一个徽标图像。不幸的是,导航控制器似乎没有这样设计。在界面构建器中,我无法使其占用屏幕的一部分。如何在顶部实现徽标图像的效果,并在屏幕的其余部分占用导航控制器?
答案 0 :(得分:2)
我自己没有这样做,但它应该是非常简单的。您需要一个包装器视图控制器作为其父级(让我们称之为MyWrapperViewController
),它的视图层次结构可能最终看起来像这样:
UIView -+ (hooked up to the view outlet in MyWrapperViewController) | +-- UIView (Your logo goes here) | +-- UIView (The "child" navigation controller's view)
徽标视图可以是UIView
,也可以是UIImageView
,或适合内容的任何类别。
在UINavigationController
课程的某处创建MyWrapperViewController
时,您可以将其view
bounds
调整为小于全屏的内容(可能是屏幕大小)减去徽标的大小,使用适当的origin
偏移,使其位于徽标下方),然后将其添加为子视图。