2013-03-01 90 views
1

這是關鍵:我正在寫一個應用程序,「建立自己」閱讀配置文件。 我需要做的是創建一個UITabBarController,其中包含幾個UINavigationController和它們各自的rootViewController。由於應用程序不知道viewController標題是什麼,因此我需要在viewWillAppear:方法啓動之前以編程方式設置它們(從AppDelegat e開始)。設置UINavigationItem標題之前viewWillAppear

如果我在viewWillAppear方法中設置標題,只有第一個v.c.在tabBarViewController將在tabBar中顯示其名稱。

這樣做的正確方法是什麼?

+0

是什麼阻止你從viewDidLoad中做什麼呢? – 2013-03-01 16:09:49

+0

因爲直到相應的選項卡沒有加載(第一次點擊),rootViewController的viewDidLoad方法不會被觸發。所以這個名字直到那一刻纔出現在標籤中。 – Lolloz89 2013-03-02 21:15:23

回答

1

基於你正在努力實現,我想在你的AppDelegateapplication:didFinishLaunchingWithOptions:方法應該努力這樣做了許多假設:

UITabBarController *cont = [[UITabBarController alloc] init]; 

for (int i=0; i<CONTROLLERS_COUNT; i++) { 
    UINavigationController *navCont = [[UINavigationController alloc] init]; 
    navCont.title = TITLE_HERE; 
    [cont addChildViewController:navCont]; 
} 

[self.window setRootViewController:cont]; 
+0

哦,親愛的,你是對的!正確的是navController是一個添加到TabBarController ...謝謝! – Lolloz89 2013-03-01 18:13:51

+0

不客氣。 – warchimede 2013-03-01 19:06:26