我无法将 UINavigationBar 的 barTintColor 设置为成功清除颜色



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

[[navigationBar setBarTintColor:[UIColor clearColor]];

它根本不尊重"清晰"的部分。与colorWithRed:green:blue:alpha相同的结果。

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

我怎样才能实现它?有没有可能的解决方案使它成为一个 完全不可见的barTintColor ,尽管它需要黑客方法?

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

这对

我有用

navigationBar.translucent = true
navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)

相关内容

  • 没有找到相关文章

最新更新