加载NIB使状态栏变为完全黑色,并保持黑色

时间:2013-11-16 14:36:39

标签: ios statusbar loadnibnamed mainbundle

我的打开屏幕(我的主应用程序屏幕)是一个UIView,其中所有内容都以编程方式完成。我想在我的“设置”屏幕上使用XIB,但我在状态栏的顶部有一个奇怪的全黑条:

Screen After Loading NIB

我按如下方式切换到它:

[[NSBundle mainBundle] loadNibNamed:@"ISViewController" owner:self options:nil];
self.view.transform = CGAffineTransformMakeRotation(-(M_PI * (90) / 180.0));
self.view.frame = [UIScreen mainScreen].applicationFrame;

我需要旋转它,但即使我注释掉CGAffineTransformMakeRotation,我仍然会得到黑条。名为“状态栏”的XIB设置被设置为“轻量级内容”。

当我退出XIB屏幕时,我使用以下内容返回原始视图:

self.view = jViewLayer;

但黑条仍然存在!奇怪的是,视图边界现在实际上已经向下移动了状态栏的高度(只有在调出我的XIB然后返回之后才会发生这种情况)。这可能是一个试图帮助我的人发生了什么的线索。谢谢大家

1 个答案:

答案 0 :(得分:0)

我不确定我理解为什么,但是我替换了上面的代码而使用此代码代替解决了我的问题

[[NSBundle mainBundle] loadNibNamed:@"ISViewController" owner:self options:nil];
self.view.transform = CGAffineTransformMakeRotation(-(M_PI * (90) / 180.0));
CGRect menuNibFrame = CGRectMake(0, 0, 768, 1024);
self.view.frame = menuNibFrame;

[UIScreen mainScreen] .applicationFrame有一些我不明白的东西。