摆脱 UIImagePickerController 中的 ios 状态栏

Posted

技术标签:

【中文标题】摆脱 UIImagePickerController 中的 ios 状态栏【英文标题】:Getting rid of the ios status bar in UIImagePickerController 【发布时间】:2014-09-12 20:45:08 【问题描述】:

我有一个标签栏,它像这样调用UIImagePickerController

    UIImagePickerController *photo = [[UIImagePickerController alloc] init];
    photo.delegate = self;
    photo.allowsEditing = NO;
    photo.sourceType = UIImagePickerControllerSourceTypeCamera;  

    [[UIApplication sharedApplication] setStatusBarHidden:YES];

    [self presentViewController:photo animated:YES completion:nil];

但即使setStatusBarHiddenYES,状态栏仍然存在。

【问题讨论】:

【参考方案1】:

在 Xcode 中转到您的 plist 文件,此键为 no

查看基于控制器的状态栏外观'并设置为 NO.,这对我有用

【讨论】:

是的,但不适用于 UIImagePicker,请参阅 ***.com/questions/18059703/…【参考方案2】:

尝试实现以下委托方法:

- (void)navigationController:(UINavigationController *)navigationController 
       didShowViewController:(UIViewController *)viewController
                    animated:(BOOL)animated 
    [[UIApplication sharedApplication] setStatusBarHidden:YES];

【讨论】:

【参考方案3】:

请通过以下代码

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

   if([navigationController isKindOfClass:[UIImagePickerController class]]&& ((UIImagePickerController*)navigationController).sourceType == UIImagePickerControllerSourceTypeCamera)
   
    [[UIApplication sharedApplication] setStatusBarHidden:YES];
   

【讨论】:

这是怎么调用的? 所以它代表委托对象(uinavigationcontroller)执行代码,但我仍然在我的 uiimagepickercontroller 中看到一个状态栏 见这里:***.com/questions/18059703/…

以上是关于摆脱 UIImagePickerController 中的 ios 状态栏的主要内容,如果未能解决你的问题,请参考以下文章

ViewController 生命周期 UINavigationController

如何从 webview 使用 UIImagePickerController

iPhone OS 3.0 中的 UIImagePickerController

iOS开发——打开手机相册,获取图片

如何使用 iphone 中的核心数据将图像存储到 sqlite? [复制]

如何摆脱 UISearchBar 的边框?