如何增加UINavigationBar的高度?

简单的问题:我怎样才能增加导航栏的高度,使附加的小部件将适合在那里, 同时保持模糊?

示例是日历应用程序,其中工作日缩写添加到导航栏的底部。

日历应用

…和邮件中,当您将邮件移动到不同的文件夹时:

邮件应用

由于iAnurag后回答是正确的,但仍然有一些用户界面问题(宽度不正确)


你可以通过添加下面的类别来改变大小

示例项目
下载

#import "ViewController.h" @implementation UINavigationBar (customNav) - (CGSize)sizeThatFits:(CGSize)size { CGRect rec = self.frame; CGRect screenRect = [[UIScreen mainScreen] bounds]; rec.size.width = screenRect.size.width; rec.size.height = 70; return rec.size; } @end 

产量
在这里输入图像说明
When press on "Button" 在这里输入图像说明


问题在iAnurag代码
在这里输入图像说明

https://developer.apple.com/library/prerelease/content/samplecode/NavBar/Introduction/Intro.html

从ReadMe.md:

Extended Navigation Bar(扩展导航栏)####这个例子演示了如何在导航栏下面放置一个自定义的视图

似乎是导航栏本身的一部分。 这种技术可以用来创build一个类似于iOS日历应用程序的界面。

我不卑鄙的观点:不要重写sizeThatFits(_:) ,不要设置导航栏高度的限制。 只是从上面的例子做错觉。

使用自定义sizeThatFits创build一个UINavigationBar类别。

 @implementation UINavigationBar (customNav) - (CGSize)sizeThatFits:(CGSize)size { CGSize newSize = CGSizeMake(self.frame.size.width,70); return newSize; } @end