【问题标题】:Swift - UINavigationController bar color does not change programmaticallySwift - UINavigationController 栏颜色不会以编程方式更改
【发布时间】:2014-10-30 09:47:41
【问题描述】:

我在更改UINavigationBar 的背景颜色时遇到问题。 到目前为止,这是我尝试过的:

    self.navigationController?.navigationBar.translucent = true
    self.navigationController?.navigationBar.backgroundColor = UIColor.blueColor()

导航栏没有变化。即使将半透明设置为 true 也完全没有效果。 我可以毫无问题地更改色调颜色,但不能更改背景颜色。

但是,如果我更改情节提要中的颜色,它会正常工作!

情节提要中是否有我错误地启用/禁用的选项?有人可以帮我弄这个吗?谢谢。

【问题讨论】:

标签: ios swift uinavigationcontroller uinavigationbar


【解决方案1】:

您应该设置导航栏的barTintColor 而不是backgroundColor。这应该是您正在寻找的。​​p>

【讨论】:

  • 哇,这么简单。感谢那。现在可以了。我会尽快接受你的回答
  • 设置 translucent = true 仍然无法正常工作。对我有什么建议吗?谢谢
  • 没问题。我不确定为什么半透明不起作用。导航栏后面肯定有东西可以显示吗?
  • 是的,我使用的是 UITableView,当我向下滚动时,内容不在栏后面。
  • 您是使用UITableViewController 还是UIViewController 并添加自己的表格?或许可以查看一些关于 SO 的其他问题,例如:stackoverflow.com/questions/19299481/…
【解决方案2】:
self.navigationController?.navigationBar.isTranslucent = true
self.navigationController?.navigationBar.backgroundColor = UIColor.blue

这样就解决了。

【讨论】:

    猜你喜欢
    • 2012-03-14
    • 1970-01-01
    • 1970-01-01
    • 2013-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多