状态栏后面的uinavigationbar

时间:2013-01-17 10:10:26

标签: ios objective-c uinavigationcontroller uinavigationbar

解释屏幕转储:

Before Modal

用户按下启动第三方编译的ViewController的按钮。第三方ViewController接管整个屏幕并隐藏状态栏。一旦用户完成它,它们将返回到第一个屏幕(上图),最终看起来像这样:

AfterModal

到目前为止,我已经尝试过这个:

- (void)viewWillAppear:(BOOL)animated {
    self.view.frame = [[UIScreen mainScreen] applicationFrame];
    [self.view setNeedsLayout];
}

但我仍然无法按下最初的UINavigationBar

=======================

更新

我使用以下方法修复了它:

CGRect frame = self.navigationController.navigationBar.frame;
frame.origin.y = 20;
self.navigationController.navigationBar.frame = frame;

这会有用吗?状态栏总是20高吗?我试过读取状态栏的高度,但它返回0 ......

0 个答案:

没有答案