【问题标题】:how to hide status bar in ios 10?如何在 iOS 10 中隐藏状态栏?
【发布时间】:2017-08-04 10:20:40
【问题描述】:

我已经检查了堆栈溢出中给出的答案。 喜欢这个方法:prefersStatusBarHidden

      -(BOOL)prefersStatusBarHidden {
       return [self.navigationController prefersStatusBarHidden];
       }

【问题讨论】:

标签: ios objective-c xcode8 statusbar appdelegate


【解决方案1】:

创建并导入如下导航控制器类别

#import <UIKit/UIKit.h>

@interface UINavigationController (StatusBarStyle)

- (void)setDefaultStatusBar;
- (void)setLightStatusBar;

@end

#import "UINavigationController+StatusBarStyle.h"

@implementation UINavigationController (StatusBarStyle)
BOOL isLight;

- (void)setDefaultStatusBar {
    isLight=NO;
    [self setNeedsStatusBarAppearanceUpdate];
}

- (void)setLightStatusBar {
    isLight=YES;
    [self setNeedsStatusBarAppearanceUpdate];
}

- (UIStatusBarStyle)preferredStatusBarStyle {
    if (isLight) {
        return UIStatusBarStyleLightContent;
    }
    else{
        return UIStatusBarStyleDefault;
    }
}

@end

并从您的 viewDidLoad 或您的视图控制器的某个位置调用 [self.navigationController setDefaultStatusBar] 或 [self.navigationController setLightStatusBar],它有一个父 UINavigationController

【讨论】:

    猜你喜欢
    • 2017-05-30
    • 2012-09-21
    • 2013-09-29
    • 2013-11-18
    • 2014-04-14
    • 2017-03-20
    • 2016-01-03
    • 1970-01-01
    相关资源
    最近更新 更多