Чтобы сделать отличное решение Эрика Б более удобным для разных UIVIewCOntrollers вашего приложения, я рекомендую добавить категорию для UIViewController и объявить его метод setTitle: title внутри. Таким образом, вы получите изменение цвета заголовка на всех контроллерах представления без необходимости дублирования.
Следует отметить, что вам не нужно [super setTItle: tilte]; в коде Эрика, и что вам нужно будет явно вызвать self.title = @ "my new title" в ваших контроллерах представления для вызова этого метода
@implementation UIViewController (CustomeTitleColor)
- (void)setTitle:(NSString *)title
{
UILabel *titleView = (UILabel *)self.navigationItem.titleView;
if (!titleView) {
titleView = [[UILabel alloc] initWithFrame:CGRectZero];
titleView.backgroundColor = [UIColor clearColor];
titleView.font = [UIFont boldSystemFontOfSize:20.0];
titleView.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
titleView.textColor = [UIColor blueColor]; // Change to desired color
self.navigationItem.titleView = titleView;
[titleView release];
}
titleView.text = title;
[titleView sizeToFit];
}
@ конец