ios – 隐藏状态栏并增加UINavigationBar的高度

我正在使用故事板创建导航栏.

我的要求是隐藏状态栏并增加导航栏的高度.当我隐藏状态栏时,导航栏会粘到顶部,高度为44像素.我需要导航栏高度为64像素(44px状态栏高度).有没有办法做到这一点?

带状态栏

没有状态栏

解决方法

首先,按照以下步骤隐藏statusBar:

首先,将此代码放在viewWillAppear中:

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

其次,设置info.plist文件,如下图所示:

接下来,您可以创建一个UINavigationBar类别,并在其中设置navigaionBar的高度.

Objective-C的

在.h文件

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

并在.m文件

@implementation UINavigationBar (Custom)

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

迅速

extension UINavigationBar {
    public override func sizeThatFits(size: CGSize) -> CGSize {
        let width = UIScreen.mainScreen().bounds.width
        let newSize = CGSize(width: width,height: 64)
        return newSize
    }
}

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...