对于不存在的状态栏,iOS7内容偏移20像素

时间:2013-09-12 17:23:48

标签: objective-c uiview ios7 contentoffset

我的UIViews有一种奇怪的行为,因为我正在迁移到iOS7。它们似乎被发送消息缩小20像素。我已从所有XIB文件中删除状态栏,并将其显式设置为隐藏在应用程序委托中。我的UINavigationController似乎被发送了一条消息:

_computeAndApplyScrollContentInsetDeltaForViewController

然后将消息发送到我的滚动视图

_adjustContentOffsetIfNecessary

将它们的偏移设置为-20像素......这不应该发生,因为没有理由让该函数按该数量调整任何东西。

有没有人知道如何解决这个问题?

2 个答案:

答案 0 :(得分:77)

我找到了解决方案!只需设置:

self.automaticallyAdjustsScrollViewInsets = NO;
视图控制器上的滚动视图作为视图...

答案 1 :(得分:0)

20个像素(或者可能是点),当它没有接到电话时听起来就像它的状态栏(我相信40接到电话时)。不确定这是否能解决您的问题,但我遇到了一个问题,在iOS7中我的状态栏没有被隐藏。我以编程方式隐藏它,它仍然显示在iOS7中,但是当在iOS6中运行时,状态栏会适当隐藏。您必须转到plist并添加以下内容:'view view-based status bar appearance'并设置为NO。