设置BarTintColor时,iOS导航栏失去透明度

时间:2015-03-05 10:44:23

标签: ios navigation uinavigationbar translucency

我对iOS开发很陌生,并且在最后几天创建一个带有自定义色调的半透明导航栏时,我一直不知所措。

我目前的状态:

  • 我创建了一个新项目,其中红色视图嵌入在导航视图中,该视图嵌入在标签栏中。

  • 在红色视图中,我将图像部分位于导航视图后面,以证明半透明效果正常。 有效。

  • 我将条形色调颜色更改为白色:

    [[UINavigationBar appearance] setBarTintColor: [UIColor whiteColor]];
    
  • 半透明度消失了。图像不再发光。所以我试过了:

    [[UINavigationBar appearance] setBarTintColor: [[UIColor whiteColor] colorWithAlphaComponent: 0.5]];
    
  • 仍然无法正常工作。

有关如何解决此问题的任何建议? 感谢。

2 个答案:

答案 0 :(得分:0)

如果您只希望navigationBar的背景是半透明的,可以尝试:

[(UIView*)[self.navigationController.navigationBar.subviews objectAtIndex:0] setAlpha:0.5f];

我在这里找到了这个:https://stackoverflow.com/a/12389579/3626094

否则,如果您希望整个navigationBar半透明,包括按钮和标题,您可以尝试:

self.navigationController.navigationBar.tintColor = [UIColor blueColor];
self.navigationController.navigationBar.alpha = 0.5f;
self.navigationController.navigationBar.translucent = YES;

我在这里找到了这个:https://stackoverflow.com/a/6959527/3626094

答案 1 :(得分:0)

这对我有用:

{{1}}