2

我有兩個不同的視圖控制器添加到TabBarController的視圖控制器數組,並將此TabBarController添加到導航控制器。向NavigationBar添加標題

現在我想爲導航控制器上的tabbar中的不同視圖顯示不同的標題。

任何幫助,將不勝感激。

回答

2

導航欄中的標題是從導航欄的頂部視圖控制器中獲取的。這聽起來像它的頂視圖控制器,就你而言,它是標籤欄控制器,所以你需要在標籤欄更改時設置標籤欄控制器的標題。

具體來說,你要指定一個UITabBarControllerDelegate標籤欄控制器的delegate財產和實現下面的方法:

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController { 
    tabBarController.title = viewController.title; 
} 

線相當於

tabBarController.navigationItem.title = viewController.navigationItem.title; 

所以,你可以使用任意一個。無論如何,將各個標籤視圖控制器的標題設置爲所需的標題,然後標籤將在標籤更改時更改。

+0

沒有我想改變navigationcontroller標題每當標籤欄的變化......我怎麼能做到這一點... – user347161 2010-05-21 15:13:46

+2

做正是我所說的 – 2010-05-21 16:22:47

+0

感謝埃德...有一些改變,你的代碼我現在可以顯示標題在導航控制器.... – user347161 2010-05-22 08:51:51

0

假設你有有三種不同的視圖中的三個viewcontrollers並要更改導航欄的標題,當你推secondViewcontroller和相同的,當你thirdviewcontroller則:

viewController2.navigationItem.title = @"Select Template"; 
viewController3.navigationItem.title = @"Template"; 

這樣我們就可以改變導航欄的標題,同時推動一些下一個視圖控制器。

希望它有幫助。