[_UIBarItemAppearance setTitleColor:forState:]:发送到实例的无法识别的选择器

Chr*_*ker 1 uikit ios ios5

我正在尝试为所有UIBarButtonItems 设置标题颜色

我用的时候:

 [[UIBarButtonItem appearance] setTitleColor:normalTitleColor forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)

我明白了:

-[_UIBarItemAppearance setTitleColor:forState:]: unrecognized selector sent to instance 0xd695e30
Run Code Online (Sandbox Code Playgroud)

我对背景图像没有任何问题,但标题颜色效果不佳.

Vin*_*ier 6

这是因为它不存在于类UIBarButtonItem或它的超类中

您可以在UIBarItem中使用此方法定义

 setTitleTextAttributes:forState:  
Run Code Online (Sandbox Code Playgroud)

设置给定控件状态的标题文本属性.

- (void)setTitleTextAttributes:(NSDictionary *)attributes forState:(UIControlState)state  
Run Code Online (Sandbox Code Playgroud)

参数
属性

包含文本属性的键值对的字典.
您可以使用NSString UIKit Additions Reference中列出的键指定字体,文本颜色,文本阴影颜色和文本阴影偏移.

要为其设置标题文本属性的控件状态. 可用性适用
于iOS 5.0及更高版本.
也可以看看

– titleTextAttributesForState:  
Run Code Online (Sandbox Code Playgroud)

宣告进入

UIBarItem.h  
Run Code Online (Sandbox Code Playgroud)