创建一个像 UINavigationBar 这样的半透明视图

Posted

技术标签:

【中文标题】创建一个像 UINavigationBar 这样的半透明视图【英文标题】:Create a translucent view like the UINavigationBar 【发布时间】:2014-09-11 11:57:46 【问题描述】:

我想在导航栏下添加一个自定义视图,该视图具有与导航栏相同的半透明属性,因此当我向上滚动 tableview 时,它位于我的自定义视图和导航栏后面。

我尝试过修改导航栏的高度,但是这会将导航栏控件(后退按钮、标题)移动到导航栏的底部,我需要将它们放在默认位置(状态栏正下方),所以我可以在底部添加我自己的元素。

我也尝试过https://github.com/JagCesar/ios-blur,但是当我将它的背景颜色设置为我的 NavigationBar 所具有的颜色时,它只是颜色不同......看起来更白:/

有人做过这样的事吗?顺便说一句,我正在为 iOS7 构建应用程序

【问题讨论】:

【参考方案1】:

控件iOS-blur 有一个属性BlurTintColor 应该设置为与导航栏的BarTintColor 相同的值。

由于导航栏底部有这条阴影线,您可能希望将自定义模糊视图放在导航控制器的视图中:

JCRBlurView *blurView = [[JCRBlurView alloc] initWithFrame:CGRectMake(0,64,320,62)];
[blurView setBlurTintColor:[UIColor colorWithHexString:@"#005A9B"]];
[self.navigationController.view addSubview:blurView];

顺便说一句,我将pod 'HexColors' 用于colorWithHexString 方法

【讨论】:

以上是关于创建一个像 UINavigationBar 这样的半透明视图的主要内容,如果未能解决你的问题,请参考以下文章