2012-03-25 66 views
4

我的應用程序包含一個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方法。

我錯過了一些明顯的東西嗎?

+0

你的意思是 「textTitleOptions」,而不是 「navBarTintColor」? – user371320 2012-04-03 15:21:27

+1

BTW-你的選項字典的正切問題。你應該使用'[NSNumber numberWithInt:0]'而不是整數'0'。否則,編譯器會將'0'視爲sentinel'nil',並忽略該參數後面的所有內容。 – 2013-02-24 23:48:25

回答

7

以下的工作。

[[UINavigationBar appearance] setTitleTextAttributes: textTitleOptions]; 

當您嘗試運行該代碼時會發生什麼?

相關問題