【发布时间】:2011-12-01 17:14:43
【问题描述】:
我遇到了一个让我发疯的简单问题。
我有一个导航控制器,根视图控制器是一个 VC,它有一个视图,应该在不显示导航栏的情况下呈现。为了实现这一点,我在 rootVC 内的-viewWillAppear: 方法中将navigationController 栏的navigationBarHidden 属性设置为YES。
为了再次显示它,我在 rootVC 的 -viewWillDisappear: 方法中将相同的属性设置为 NO。
如果我向视图询问其 frame.size,它将正确回答 320 宽度和 460 高度。
当我推动另一个视图(我可以看到导航栏出现)时,如果我询问视图的大小,它说我是 320x460,而这个错误应该告诉我类似 320x416 的信息。
如果我现在推送另一个视图并询问它的大小,我会得到正确的大小 320x416。如果现在我弹出按回,我会再次获得正确的尺寸。
事实是导航栏与“中间”视图重叠了 44 个点,除了硬编码它的大小并且我不想要之外,我无法将其设置为正确的大小。
IB 阻止了视图自动调整掩码,因为它是文件的所有者之一。状态栏样式为黑色不透明。
你有什么提示吗?
谢谢,
安德烈亚
【问题讨论】:
-
;-D 类似的东西。我在第二个视图的 viewDidLoad 中写了 self.navigationController.navigationBarHidden=NO; THX ..把它写成答案,这样我就可以把它设置为绿色。真的很感谢;-)
标签: iphone uinavigationcontroller uinavigationbar hidden autoresizingmask