在另一个SO问题之后,我试图使用viewDidLoad方法中的以下代码更改navigationBar标题字体:
NSShadow *shadow = [[NSShadow alloc] init];
shadow.shadowColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.8];
shadow.shadowOffset = CGSizeMake(0, 1);
[[UINavigationBar appearance] setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor colorWithRed:21.0/255.0 green:62.0/255.0 blue:111.0/255.0 alpha:1.0], NSForegroundColorAttributeName,
shadow, NSShadowAttributeName,
[UIFont fontWithName:@"HelveticaNeue-CondensedBlack" size:21.0], NSFontAttributeName, nil]];
但字体没有改变。
你能告诉我那里有什么问题吗?
答案 0 :(得分:1)
您无法在App Delegate中的applicationDidFinishLaunching:
之外的任何位置更改UIAppearance属性。 UIAppearance旨在在应用程序启动时进行更改。
如果您将其移至代理中的applicationDidFinishLaunching:
,它应该有效。