【问题标题】:Can't change UINavigationBar Custom Font Color无法更改 UINavigationBar 自定义字体颜色
【发布时间】:2015-06-20 12:25:12
【问题描述】:

我正在使用 Storyboard,我想在我的一个 ViewController 上将 UINavigationBar 标题颜色更改为 UIColor.whiteColor()。 Xcode 正在识别字体,但我无法更改颜色。

我试过了: 使用 Storyboard 和下面的代码更改它,但它似乎不起作用。我还尝试使用不同的字体,.otf 和 .ttf 都认为这可能是由字体错误引起的。到目前为止,我只能使用任何自定义字体获得黑色。

 var nav = self.navigationController!.navigationBar
    self.navigationItem.title = "HOME"
    nav.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()]
    nav.titleTextAttributes = [NSFontAttributeName: UIFont(name: "Impact", size: 30)!]

【问题讨论】:

  • 如果我离开你的最后一行,颜色会正确改变。似乎无法在我的系统上运行最后一行。
  • 是的,它可以工作——但我想使用自定义字体而不是系统字体。省略最后一行将改变 UINavigationBar 内系统字体的颜色,这不是我想要的。感谢您的回复!
  • 这种方式确实会改变标题颜色,但不幸的是它也会将自定义字体更改为常规系统字体。
  • 您是否只想在一个视图中更改导航栏的字体颜色?或整个应用程序?如果你想彻底改变,我会在应用程序委托中使用 UIAppearance。
  • @SefTarbell 是的,只有一个视图,感谢您让我知道另一种选择,有一天我会需要它!

标签: swift fonts


【解决方案1】:

您还可以将导航栏的 tintColor 属性设置为您想要的颜色。

【讨论】:

    【解决方案2】:

    我发现你需要像这样同时设置属性:

    nav.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor(), NSFontAttributeName: UIFont(name: "Impact", size: 30)!]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-24
      • 2018-02-26
      • 1970-01-01
      • 2020-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多