1

我有一个隐藏状态栏的应用程序。为了隐藏状态栏,我做了以下事情:

  [[UIApplication sharedApplication] setStatusBarHidden:YES];

这适用于 ios 6。现在在 iOS 7 中,我添加了View controller-based status bar appearance = NO. 我还创建了导航控制器的子类并添加了:

- (BOOL)prefersStatusBarHidden
{
    return YES;
}

一切正常,但是当我呈现 UIImagePicker 状态栏时,它会变得可见,并且即使在关闭视图后它也不会隐藏起来。我也在prefersStatusBarHidden相关视图中添加了方法,但没有成功:(

请提供任何帮助。

4

3 回答 3

3

使用以下链接

- (void)imagePickerController:(UIImagePickerController *)aPicker didFinishPickingMediaWithInfo:(NSDictionary *)info {

// for iOS7
    if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {

        [[UIApplication sharedApplication] setStatusBarHidden:YES];
    }

以下是有关 ios7 中堆栈溢出本身的状态栏问题的参考列表。;-)

在 iOS 7 中,状态栏和导航栏出现在我的视图边界上

状态栏不会消失

在 iOS 7 中,状态栏出现在我的视图边界上

于 2013-10-11T06:23:01.397 回答
0

使用可以将此方法用于状态栏问题。它应该可以正常工作。

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
        UIView *addStatusBar = [[UIView alloc] init];
        addStatusBar.frame = CGRectMake(0, 0, 320, 20);
        addStatusBar.backgroundColor = [UIColor colorWithRed:0.973 green:0.973 blue:0.973 alpha:1]; //change this to match your navigation bar
        [self.window.rootViewController.view addSubview:addStatusBar];
    }
于 2013-10-11T03:43:18.843 回答
0

Target's在您的常规设置中尝试此操作。

在此处输入图像描述

于 2013-10-11T06:15:57.140 回答