在哪里放置setStatusBarHidden:如果我在使用相机时不想要状态栏,则为YES

时间:2013-10-28 15:58:14

标签: ios statusbar ios-camera

我是iOS开发的新手。我希望状态栏仅在我启动相机时隐藏,以便相机控件不会与状态栏重叠。我找到了添加此行的解决方案:

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

我应该放在哪里?我尝试添加内部 - (IBAction)OpenCamera {}和 - (void)viewDidLoad {}但两者都不起作用。

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

如果您使用的是最新的SDK - Xcode 5 - 那么您可能需要将View-controller状态栏外观布尔值添加到您的应用程序.plist

(附有屏幕) enter image description here

我非常确定它应该设置为 NO ,以便您能够动态控制外观。你还需要:

[[UIApplication sharedApplication] setStatusBarHidden:YES];

[[UIApplication sharedApplication] setStatusBarHidden:NO];

我认为withAnimation已被弃用

答案 1 :(得分:1)

for iOS 7中的隐藏状态栏尝试添加:

- (IBAction)takeCamera {
[UIApplication sharedApplication].statusBarHidden = YES;

 BOOL cameraIsShow = YES   //custom boolean
}

- (BOOL)prefersStatusBarHidden {

  if(cameraIsShow == YES) {
    return YES;
 }
  else return NO;
}