Xcode Hide white status bar ios 10

前端 未结 5 2051
感情败类
感情败类 2021-01-18 03:26

I want white status bar in my app. For this I set View controller-based status bar appearance to NO and Status bar style to UISt

相关标签:
5条回答
  • 2021-01-18 03:57

    In your plist file add View controller-based status bar appearance Bool property and set it to YES.

    Now in your view controller add the methods like below:

    // TO MAKE STATUS BAR WHITE
    override func preferredStatusBarStyle() -> UIStatusBarStyle {
            return .LightContent
    }
    
    // TO MAKE STATUS BAR BLACK
    override func preferredStatusBarStyle() -> UIStatusBarStyle {
            return .LightContent
    }
    
    // RETURN TRUE TO HIDE AND FALSE TO SHOW STATUS BAR
    override func prefersStatusBarHidden() -> Bool {
            return true
    }
    

    For Objective-C

    - (BOOL)prefersStatusBarHidden {
        return NO;
    }
    
    -(UIStatusBarStyle)preferredStatusBarStyle {
        return UIStatusBarStyleLightContent;
    }
    

    For removing redundant code you can make a BaseViewController as subclass of UIViewController and add the methods in that class. And override the method in the class which requires change.

    0 讨论(0)
  • 2021-01-18 03:57

    if your viewcontroller is embedded in UInavigationController then try writing this code in your

    -(BOOL)prefreStatusBarHidden
    {
           return [self.navigationController prefersStatusBarHidden];
    }
    
    0 讨论(0)
  • 2021-01-18 03:59

    This is the swift version:

    To hide the status bar or change it's appearance, you need to override the following properties in your view controller itself

    override var prefersStatusBarHidden: Bool{
            return true
    }
    

    the above hides the status bar and below if you want to set it to white:

    override var preferredStatusBarStyle: UIStatusBarStyle {
            return .lightContent
    }
    
    0 讨论(0)
  • 2021-01-18 04:12

    You can do this by setting the navigation background image in your base viewcontroller.

    UIImage *bgImage = [UIImage imageNamed:@"bg_navigationbar"];
    [self.navigationController.navigationBar setBackgroundImage:bgImage forBarMetrics:UIBarMetricsDefault];
    
    0 讨论(0)
  • 2021-01-18 04:15

    you can set using xcode status bar style is "light"

    0 讨论(0)
提交回复
热议问题