获取导航栏标题的文字颜色

Get text colour of navigation bar title

我需要获取导航栏标题的文本颜色。

我知道如何设置:

self.navigationController.navigationBar.titleTextAttributes = ...

但是,我似乎找不到任何实际 获取 颜色而不是设置颜色的东西。我试过使用:

NSLog(@"%@", self.navigationController.navigationBar.titleTextAttributes);

打印出包含 titleTextAttributes 的字典。其中一个条目有键 NSColor,但是,它的值似乎与文本的颜色实际上不匹配。此输出如下所示:

{
    NSColor = "UIDeviceWhiteColorSpace 1 1";
    NSFont = "<UICTFont: 0x7fa23be1df60> font-family: \"HelveticaNeue\"; font-weight: normal; font-style: normal; font-size: 24.00pt";
}

有人知道如何检索此信息吗?

我在上面写的检索颜色的方法我认为无效实际上是正确的。即:

 NSDictionary *titleTextAttributes = self.navigationController.navigationBar.titleTextAttributes;

这将检索其中包含标题文本属性的字典。 该词典中的一个条目具有键 NSColor,其值是文本的实际颜色。这可以使用以下方式专门检索:

UIColor *textColor = [self.navigationController.navigationBar.titleTextAttributes objectForKey:@"NSColor"];

注: 黑色和白色分别列为 UIDeviceWhiteColorSpace 0 1UIDeviceWhiteColorSpace 1 1。不要混淆他们的名字中都有 'white',就像我一样。

感谢 rmaddy 指出这一点。