导航栏 Alpha 值未在 iOS 7 中设置

Posted

技术标签:

【中文标题】导航栏 Alpha 值未在 iOS 7 中设置【英文标题】:Navigation Bar Alpha Value not setting in iOS 7 【发布时间】:2013-12-30 10:25:34 【问题描述】:

此问题仅发生在 ios 7.x 中,相同的代码在 iOS 6.x 中运行良好。

在我的应用程序中,我在viewWillAppear 方法中为ViewController-A 设置了navigationBar's alpha value0.0f

当我推送到这个viewController 时,一切似乎都正常。

假设现在从这个viewController-A(导航栏alpha 设置为0.0f),应用程序进入后台。

当应用再次返回前台时(viewControllerA 作为可见控制器),navigation bar alpha value 会自行更改为1.0f

我尝试在我的视图控制器中注册UIApplicationDidBecomeActiveNotification 通知并再次将 alpha 设置为 0.0f。

但即便如此,当从后台返回时,条形仍会保留 alpha 值 1.0f。

还有其他人遇到过这个问题吗?

任何建议将不胜感激。

【问题讨论】:

那么你真的想通过做 alpha 0.0 来隐藏 uinavigationbar 我想使用 alpha 值而不是使用 'navigationBarHidden' 隐藏它。 如何设置导航栏的颜色为clearcolor [self.navigationController.navigationBar setTintColor:[UIColor clearColor]]; 使用清晰的颜色不会使navigationBar的alpha值为0.0f。 【参考方案1】:

问题是:你想达到什么目标?如果需要,您可以使条形图半透明,或更改其色调。更改 alpha 并不容易。你可以摆弄控制器的 UINavigationBar 的子视图,但我会避免这样做。

隐藏 BAR 只是最好的方法。

【讨论】:

【参考方案2】:

我认为你可以通过使用下面的代码来做到这一点,设置 bartint 颜色和 alpha。

[self.navigationBar setBarTintColor:[UIColor colorWithRed:125/255.0 green:178/255.0 blue:15/255.0 alpha:0.2]];

【讨论】:

以上是关于导航栏 Alpha 值未在 iOS 7 中设置的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 7 中设置导航栏的色调颜色

在我的导航栏 iOS 7 中设置色调/半透明级别的问题

ios7 - 故事板 - 无法在我的视图控制器中设置导航栏

在情节提要中设置导航栏项目图像不起作用

iOS中设置导航栏标题的字体颜色和大小

转iOS中设置导航栏标题的字体颜色和大小