6

UINavigationBar 有一个奇怪的 iOS 7 事情。如果您尝试将其barTintColor属性设置[UIColor clearColor]为 alpha = 0 的任何颜色,它会完全忽略该值。例如,如果你写:

[[navigationBar setBarTintColor:[UIColor clearColor]];

它根本不尊重“明确”的部分。与 相同的结果colorWithRed:green:blue:alpha

但最有趣的部分是,如果您将translucent属性设置为NO,那么它将采用您指定的颜色,但 alpha 为 1。因此,如果我指定colorWithRed:1 green:0 blue:0 alpha:0它将设置为纯红色,alpha 为 1。

我怎样才能实现它?是否有任何可能的解决方案可以使它完全不可见barTintColor,尽管它需要 hacky 方法?

4

2 回答 2

5

如果您想要一个清晰的导航控制器,请尝试将导航控制器的背景图像设置为使用清晰的 PNG 文件(1x1 透明,无颜色)。

于 2013-11-02T00:22:16.660 回答
3

这对我有用

navigationBar.translucent = true
navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)
于 2016-02-26T14:47:42.410 回答