iOS 隐藏StatusBar问题

需求是需要隐藏掉应用内所有的StatusBar,然后有部分的东西(如图片选择器,是封装在第三方的SDK中)我无法获取到那个类的.m文件.
然后我看iOS10后,我隐藏StatusBar的代码是这样的

- (BOOL)prefersStatusBarHidden {
    return YES;
}

之前用的直接调用隐藏的代码,现在没什么作用,所以现在用这个来隐藏.
那么问题来了,对于第三方的比如UIImagePickerViewController,我怎么隐藏它的StatusBar呢,我没办法替换成自己的图片选择器.
我想着是用runtime去捕获到这个,然后动态添加上这个方法的代码,网上找了相关代码,不知道怎么弄,能否给个解决的思路或者一般的方法.

阅读 3.1k
3 个回答

可以继承自 UIImagePickerViewController,然后重写掉prefersStatusBarHidden方法

可以在appDelegate的方法里面试试

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [application setStatusBarHidden:true];
}
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
    隐藏状态栏
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题