UINavigationcontroller的框架问题

时间:2013-09-10 14:52:18

标签: ios objective-c ios6 uinavigationcontroller uinavigationbar

我看到在视图中使用自定义按钮推送/弹出UIViewController这个非常奇怪的问题。我确认它不会发生在其他视图中我喜欢UIViewTableController等。我有一个计算导航栏+状态栏高度的函数,然后我偏移我的图标,使它们的起源开始于CGMakeRect(0.0f,navbarheight + statusbarheight, ....)当我在手机上启动主屏幕时,这看起来很棒(此视图初始化为根视图):

https://dl.dropboxusercontent.com/u/28315319/photo%20%282%29.PNG

然后,当我将新视图推到导航控制器上时,我看到这个间隙突然出现了。这不会发生在模拟器上,但会在手机上发生。同样,顶部按钮被放置为CGMakeRect(0.0f,navbarheight + statusbarheight,....)

https://dl.dropboxusercontent.com/u/28315319/photo%20%283%29.PNG

最后,当我弹出该视图时,我原来的根视图包含这个空白。

https://dl.dropboxusercontent.com/u/28315319/photo%20%281%29.PNG

不知道是什么导致这种情况发生在真正的手机(iphone 4s + iphone 5)而不是模拟器上。如果您需要更多信息,请与我们联系。

更新:

据我所知 - 这是XCode模拟器中的一个错误,没有考虑导航栏的高度。我不再使用模拟器,只是将其分发到手机上。

1 个答案:

答案 0 :(得分:0)

听起来你可能还没有self.navigationController.navigationBar.hidden设置为YES。这样做应该自动考虑导航栏偏移量。