隐藏状态栏时如何使视图转到顶部

时间:2009-12-29 15:32:49

标签: iphone

- (void)viewWillAppear:(BOOL)animated {

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];

[navigationController setNavigationBarHidden:YES animated:YES];
}

上面的代码完全正常,当视图即将出现时,一个漂亮的动画开始,之后,状态栏和导航栏都被隐藏。

BUT!我的320x480视图没有像我想要的那样移动到顶部(0,0),但它被移动到导航栏所在的位置(隐藏)状态栏。状态栏的位置为空白,我的视图底部与窗口隔开。我觉得这很奇怪,因为你可以看到,我正在使用UINavigationController切换视图,我也隐藏了导航栏,并且视图确实向上移动了44px,补偿了导航栏的消失。它只是不考虑状态栏的高度。

我的相机视图控制器上出现同样的问题:相机正在打开但视图不在顶部的视图

任何人都知道如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

查看这篇文章。我已经好几次了。你应该全力以赴。

How to set the top position = 0 after setStatusBarHidden:Yes?

答案 1 :(得分:0)

守则是:

只是一个观点:

[self.view setFrame: [self.view bounds]];

内部带滚动视图的视图

[self.view setFrame: [self.view bounds]];
[self.theScroller setFrame: [self.view bounds]];

“theScroller是我的滚动视图的名称