摆脱恶劣的状态栏并不像在iOS 7上那样容易

时间:2013-10-15 00:02:44

标签: iphone ios objective-c ipad

我在iOS 7上运行了针对iOS 6.0编译的应用程序。

我正试图摆脱状态栏,我几乎就在那里。

我已将此添加到info.plist

View controller-based status bar appearance = NO
Status bar is initially hidden = YES

我已将此代码添加到rootViewController

- (BOOL)prefersStatusBarHidden
{
    return YES;

}

一切都很好。应用程序在没有状态栏的情况下加载但是一旦我从rootViewController呈现UIImagePickerController,状态栏就会恢复,即使在选择器解散之后也是如此。

是的,我已经将UIImagePickerController子类化了,并将prefersStatusBarHidden添加到了类中,只是为了看,但没有任何改变。

我如何摆脱这种憎恶。请救救我。


编辑:不,

[self setNeedsStatusBarAppearanceUpdate];

无效

2 个答案:

答案 0 :(得分:2)

我的应用程序中存在同样的问题。有效的解决方案 - 假设显示UIImagePickerController的视图控制器实现UINavigationControllerDelegate协议。实施此协议方法 -

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated{

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

}

答案 1 :(得分:1)