2010-01-06 72 views
4

當您的TabBarController中有超過5個視圖控制器時,會自動爲您設置「更多」視圖。是否有可能在此視圖中更改導航欄的顏色以匹配我使用的顏色,而不是默認的藍色?爲「更多」選項卡更改NavigationBar的顏色?

+0

你是否已經成功地吸取其他項目用不同的顏色呢?私有API?由於您只需設置一個圖像,即任何顏色的圖像都由UITabBarItem自動生成,因此您可以獲得白色和藍色的圖像。 – Joost 2010-01-06 20:29:32

+0

哎呀,這不是你真正想要的,只是忽略了我的評論。 – Joost 2010-01-06 20:36:52

回答

10

好的。我不應該完全相信文檔。幾分鐘後,我通過嘗試找到了答案。文檔列出了moreNavigationController是隻讀屬性。但是,這正常工作對我來說:

tabBarController.moreNavigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; 

tabBarController.moreNavigationController.navigationBar.tintColor = [UIColor redColor]; 

爲了防止有人知道。

+3

屬性爲只讀的事實意味着您不能分配給它,而不是您不能更改它所引用的對象的屬性。 你不能做'tabBarController.moreNavigationController =東西;'。 – pgb 2010-01-06 21:33:14

+0

很久以前,我爲有興趣的人寫了這篇博文:http://runmad.com/blog/2010/01/coloring-fun-with-morenavigationcontroller-and-it/ – runmad 2013-02-06 23:32:01

1

我只知道這個工程:

yournavigationController.navigationBar.tintColor = [UIColor blueColor]; 

但我不知道它是否工作therfore。

0

tabBarController.moreNavigationController.navigationBar.tintColor = [UIColor colorWithRed:64/256.0 green:191/256.0 blue:23/256.0 alpha:1.0]; 

在我的主要應用程序委託工作

1

在您的應用程序UIApplicationDelegate把這個:

self.tabBarController.moreNavigationController.navigationBar.tintColor = [UIColor blackcolor]; 
+1

有沒有必要回答已經回答的問題,接受的線程與完全相同的代碼... – runmad 2012-05-09 13:59:41

相關問題