我有一个用iOS 6 sdk开发的应用程序。现在我已经将sdk和目标更新到iOS 7.在我完成切换并运行应用程序之后,我注意到一些UI元素没有正确定位在模拟器中。我认为这是因为半透明的状态栏。我将视图的帧高从748更改为768并将Delta Y设置为20.我认为这将导致视图从状态栏下方开始。但它似乎重叠,并且UI元素没有像在iOS 6中那样定位。
我尝试过的设置:
在每种情况下,状态栏都与视图重叠。
模拟器视图(旧设置,框架高度748,无增量):
[更新] 我尝试将info.plist中的状态栏样式设置为不透明黑色样式,但视图仍然与状态栏重叠。
答案 0 :(得分:0)
如果您仍然想要状态栏但不希望它重叠,只需将其添加到您的viewController
即可-(void)viewDidLoad {
[super viewDidLoad];
if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
self.edgesForExtendedLayout = UIRectEdgeNone;
}
答案 1 :(得分:0)
原来我正在编辑错误的文件。我最近从xib切换到了storyboard,我一直在编辑xib而不是故事板。
在故事板中,我将元素向下移动了20px,这有助于我获得与iOS6类似的视图。