ステータスバーの一括変更
・Info.plist(通常はSupporting Filesの中に入っています。ファイル名は「xxx-Info.plist」)に
「View controller-based status bar」という項目があります(ない場合には追加する必要があります)。
「View controller-based status bar」をNOに設定します。
・適切なところに(例えば、AppDelegate.mのapplication:didFinishLaunchingWithOptions ← はじめて起動時呼び出される処理)、
下記処理を書きます↓↓
// UIStatusBarStyleDefault:デフォルト
// UIStatusBarStyleLightContent:フォント白
// UIStatusBarStyleBlackOpaque:黒
// UIStatusBarStyleBlackTranslucent:透明
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
ViewController単位でのステータスバー変更
・Info.plistで「View controller-based status bar」をYESに設定します。
・対象ViewControllerに、下記のような処理を書きます↓↓
- (void)viewDidLoad {
[super viewDidLoad];
if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {
// ViewControllerでステータスバーの更新を宣言
[self setNeedsStatusBarAppearanceUpdate];
}
}
- (BOOL)prefersStatusBarHidden {
// YES:ステータスバー非表示
// NO:ステータスバー表示
return NO;
}
- (UIStatusBarStyle)preferredStatusBarStyle {
// UIStatusBarStyleDefault:デフォルト
// UIStatusBarStyleLightContent:フォント白
// UIStatusBarStyleBlackOpaque:黒
// UIStatusBarStyleBlackTranslucent:透明
return UIStatusBarStyleLightContent;
}
