2011-01-19 108 views
4

我已經設置了兩個單獨的UIViewControllers的UITabBarController。在init第二的UIViewController我設置了UITabBarItem以便它能夠正確顯示的標籤:UITabBarItem標題被UIViewController標題覆蓋?

UITabBarItem *tabBar = [self tabBarItem]; 
[tabBar setTitle:@"DATA"]; 
[tabBar setImage:[UIImage imageNamed:@"DATA.png"]]; 

這工作得很好,標籤顯示的標題是「數據」和顯示正確的圖標圖像。在裏面的loadView相同的控制器我設置的UIViewController標題:

[self setTitle:@"Data Table"]; 

我的問題是,當我運行該應用程序我的第二個選項卡上寫着「DATA」但是當我點擊標籤和的loadView被稱爲(我有一個UITableView在那裏),我將UNViewControllers標題屬性設置爲「數據表」我的第二個選項卡也更改爲讀取「數據表」。有沒有辦法解決/避免這種情況?

回答

3

你確定只想要兩個UIViewControllers而不是UINavigationControllers嗎?通常你創建一個UIViewController,然後用該視圖控制器創建UINavigationController,然後將這些導航控制器放到UITabBarController中。

這樣你的UIViewController實際上會有'標題',你可以改變。

+0

第一個標籤是一個UIMapView,第二個標籤是使用initWithRootViewController一個UINavigationController,根視圖控制器是一個UIViewController其具有在其上(除其他事項外)一個UITableView。 – fuzzygoat 2011-01-19 14:25:08

0
self.navigationController.navigationBar.topItem.title = @"title";