ios - 如何展开 UINavigationBar 以覆盖状态栏?

标签 ios swift

我不希望状态栏消失。我只是希望导航栏的高度为 64 像素而不是 44。这可能吗?

最佳答案

这是我用来向状态栏和导航栏添加模糊 View 的代码,我给出了 CGRect frame= CGRectMake(0, -20, 1000, 64); 以便模糊导航栏上的 View 也覆盖状态栏。为此,我将Y坐标指定为-20。您可以将此模糊 View 替换为您想要的任何uiview,从而用导航栏覆盖状态栏。另外,我根据您的要求将导航栏的高度指定为 64

CGRect bounds = self.navigationController.navigationBar.bounds;
UIVisualEffectView *visualEffectView = [[UIVisualEffectView alloc] initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleLight]];
CGRect frame= CGRectMake(0, -20, 1000, 65);
visualEffectView.frame = frame;
visualEffectView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
[self.navigationController.navigationBar addSubview:visualEffectView];
self.navigationController.navigationBar.backgroundColor = [UIColor clearColor];
[self.navigationController.navigationBar sendSubviewToBack:visualEffectView];

关于ios - 如何展开 UINavigationBar 以覆盖状态栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35547279/

相关文章:

ios - 通过 Storyboard Segue 在类之间传递时, bool 变量始终为 false

ios - 从 iOS 中的 GMSPlace 获取营业时间

ios - 如何编写简单的单元测试来测试 JSON 的解析?

objective-c - 为什么 NSURLConnection 的 currentRequest 在重定向后不指示正确的 URL?

ios - 更改源文档后,UIWebView 不会在我的 iOS 应用程序中刷新位于我的服务器上的 PDF 文件

ios - Xcode 10 beta2 : Cannot invoke initializer for type 'UIView' with no arguments

java - 使用 Javapns 的 Apple 推送通知服务

ios - Objective-C : validity check for an enum variable

ios - 如何使用 swift 在 Parse 中获取所有创建的类名?

swift - FIREBASE 4 类型 'StorageReference' 的值没有成员 'put'