是否可以使用UIAppearance API设置UINavigationBar的titleTextAttributes?
问题描述:
我的应用程序包含一个UITabrBar,它在每个选项卡中都有一个UINavigationController。我可以使用UIAppearance API来代替设置所有导航栏的titleTextAttributes吗?是否可以使用UIAppearance API设置UINavigationBar的titleTextAttributes?
现在我的代码看起来像
NSDictionary *textTitleOptions = [NSDictionary dictionaryWithObjectsAndKeys:[UIColor blackColor], UITextAttributeTextColor, [UIColor clearColor], UITextAttributeTextShadowColor, 0, UITextAttributeTextShadowOffset, nil];
navController.navigationBar.titleTextAttributes = textTitleOptions;
bNavController.navigationBar.titleTextAttributes = textTitleOptions;
meNavController.navigationBar.titleTextAttributes = textTitleOptions;
我想这样做
[[UINavigationBar appearance] setTitleTextAttributes:navBarTintColor];
但没有setTitleTextAttributes方法。
我错过了一些明显的东西吗?
答
以下的工作。
[[UINavigationBar appearance] setTitleTextAttributes: textTitleOptions];
当您尝试运行该代码时会发生什么?
你的意思是 “textTitleOptions”,而不是 “navBarTintColor”? – user371320 2012-04-03 15:21:27
BTW-你的选项字典的正切问题。你应该使用'[NSNumber numberWithInt:0]'而不是整数'0'。否则,编译器会将'0'视为sentinel'nil',并忽略该参数后面的所有内容。 – 2013-02-24 23:48:25