【问题标题】:How to dynamically change navigation bar color on ios15?如何在 ios 15 上动态更改导航栏颜色?
【发布时间】:2022-01-04 00:45:15
【问题描述】:

多年来一直有效的是

self.navigationController?.navigationBar.barTintColor = MY_COLOR

但在 iOS15 中这是行不通的。有关于如何在应用程序启动时更改它的答案,但我需要在显示导航栏并且不重新加载视图控制器后更改它。这在 iOS 14 及更早版本中是可能的。

【问题讨论】:

  • 调用对您的 appDelegate 的引用,或从您的 appDelegate 调用静态方法来更改它。
  • 让 appDelegate = UIApplication.shared.delegate 为! AppDelegate
  • 我不明白。为了澄清,我需要能够多次更改导航栏背景(甚至每秒一次),而无需加载或重新加载视图控制器。这在 iOS 15 之前是可行的,所以我想知道现在是否可行。

标签: ios swift ios15


【解决方案1】:

在您的 VC 中,您可以尝试调整 view.backgroundColor

      UINavigationBar?.view.backgroundColor = MY_COLOR

【讨论】:

  • 是的,它不会帮助改变导航栏显示后的颜色
  • 所以显示后,你需要改变它。是第一次设置吗?
  • 试试 UINavigationBar?.view.backgroundColor = .yourColor
  • 知道了,修复它的是 navigationController?.view.backgroundColor = MY_COLOR。把它放在答案中,我会接受。谢谢。
猜你喜欢
  • 2021-11-22
  • 2021-11-16
  • 2020-01-21
  • 2017-02-17
  • 2013-09-26
  • 1970-01-01
  • 1970-01-01
  • 2014-02-02
  • 2020-11-09
相关资源
最近更新 更多