iOS Status Bar 隐藏显示设置

iOS 状态栏隐藏显示设置  

Status Bar 隐藏 

1. 在info.plist文件实现状态栏全局隐藏

  • 在info.plist文件中添加Status bar is initially hidden 设置为 YES,这个是隐藏APP在LunchScreen(欢迎页面)是的状态栏.

在info.plist文件中添加View controller-based status bar appearance 设置为 NO,这个是隐藏 App 在所有 UIViewController 时的状态栏.

iOS Status Bar 隐藏显示设置_第1张图片

注意:

当 Status bar is initially hidden 设置为NO时,不管 View controller-based status bar appearance 设置为 NO 还是 YES ,都是无效的,只有 Status bar is initially hidden 设置为 YES 的时候, View controller-based status bar appearance 才生效.

2.通过代码实现状态栏全局隐藏

  • 在 Info.plist 文件中添加 View controller-based status bar appearance 设置为 NO 
  • 在 AppDelegate 文件中,实现下面方法(在其他 UIViewController 中也有效)
// OC
[UIApplication sharedApplication].statusBarHidden = YES;

// Swift
UIApplication.sharedApplication().statusBarHidden = true

注意:

如果想要通过代码实现状态栏隐藏,必须在 Info.plist 文件中添加 View controller-based status bar appearance ,并且必须设置为 NO ,否则代码不会有任何效果,而且代码只能隐藏 App 在所有 UIViewController 时的状态栏,不能隐藏在 LunchScreen(欢迎界面)时的状态栏.

3.通过代码实现状态栏局部隐藏

上面的方法是全局隐藏,是隐藏 App 在所有 UIViewController 时的状态栏,下面的方法是局部隐藏,是单个 UIViewController 内的隐藏.

  • 在 Info.plist 文件中添加 View controller-based status bar appearance 设置为 YES
  • 在需要隐藏状态栏的 UIViewController 文件中,加入下面方法:
// OC
- (BOOL)prefersStatusBarHidden {
    return YES;
}

// Swift
override func prefersStatusBarHidden() -> Bool {
    return true
}

注意:

如果想要通过代码实现某个 UIViewController 状态栏局部隐藏,必须在 Info.plist 文件中添加 View controller-based status bar appearance ,并且必须设置为 YES ,否则代码不会有任何效果.

你可能感兴趣的:(iOS)