Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Hide Status Bar and Increase the height of UINavigationBar

I am using story board to create navigation bar.

My requirement is to hide the status bar and increase the height of Navigation bar. When i hide the status bar, the navigation bar sticks to top and the height is 44 px. i need a navigation bar height as 64 px (44px+status bar height). Is there any way to do this?

With status bar

enter image description hereWithout status bar Without Status bar

like image 658
iPhone Guy Avatar asked Oct 15 '14 10:10

iPhone Guy


People also ask

What is status bar height in iOS?

By default Status Bar height in iOS is 20 pt .

How to hide the navigation bar on Android?

Touch “Settings” -> “Display” -> “Navigation bar” -> “Buttons” -> “Button layout”. Choose the pattern in “Hide navigation bar” -> When the app opens, the navigation bar will be automatically hidden and you can swipe up from the bottom corner of the screen to show it.

How to hide navigation bar programmatically?

View decorView = getWindow(). getDecorView(); // Hide both the navigation bar and the status bar. // hide the navigation bar.


1 Answers

To start off, you hide your statusBar by following these steps:

First, put this code in viewWillAppear:

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

Second, set your info.plist file as the below image shows:

enter image description here

Next, you can make a Category of UINavigationBar and in it set the height of the navigaionBar.

Objective-c

in .h file

@interface UINavigationBar (Custom)
- (CGSize)sizeThatFits:(CGSize)size ;

and in .m file

@implementation UINavigationBar (Custom)

- (CGSize)sizeThatFits:(CGSize)size {
    CGFloat width = [UIScreen mainScreen].bounds.size.width;
    CGSize newSize = CGSizeMake(width, 100);
    return newSize;
}

Swift

extension UINavigationBar {
    public override func sizeThatFits(size: CGSize) -> CGSize {
        let width = UIScreen.mainScreen().bounds.width
        let newSize = CGSize(width: width, height: 64)
        return newSize
    }
}
like image 63
Kirit Modi Avatar answered Nov 02 '22 17:11

Kirit Modi