admin管理员组

文章数量:1516870

iOS开发 顶部状态栏的隐藏

在做电子书阅读器的时候,发现全屏阅读是需要隐藏状态栏的。百度了很多方法,说的都不是很清楚。

最后找到了一个方法。只需在UIViewController实现两个方法就可以改变系统状态栏了。

- (BOOL)prefersStatusBarHidden  
{  return NO; //返回NO表示要显示,返回YES将hiden  
}  
- (UIStatusBarStyle)preferredStatusBarStyle  
{  return UIStatusBarStyleLightContent;  //UIStatusBarStyleDefault = 0 黑色文字,浅色背景时使用  //UIStatusBarStyleLightContent = 1 白色文字,深色背景时使用  
}

调用

[self setNeedsStatusBarAppearanceUpdate];

可以更新状态栏

还可以加动画更新状态栏

[UIView animateWithDuration:0.5 animations:^{  [self setNeedsStatusBarAppearanceUpdate];  }];<span style="color: rgb(92, 92, 92); font-family: Consolas, 'Courier New', Courier, mono, serif;"> </span>

还有一种方法是在infor.plist中加入key:UIViewControllerBasedStatusBarAppearance 并设置其值为NO,这样就告诉系统,status bar不依赖于UIViewController。

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


本文标签: iOS开发 顶部状态栏的隐藏