2011-09-14 70 views
1

所以,我所擁有的一切工作,我怎麼想......有點......不過,我想我會約了錯誤的方式,並希望確保我做它從一開始就。所以我會盡我所能解釋我現在所擁有的東西(與我一樣,因爲我是iOS的新手)。結合的TabBar和導航控制器質詢

所以在我的appDelagate我有一個名爲「FrontPage中」的UIViewController這基本上是一個登錄屏幕。一旦登錄通過身份驗證,它將從超級視圖中刪除自己,並在標籤欄中自行創建一個tabbarcontroller,navigationcontroller(在tabbar內)和各種UIViewController。然後我推我的TabBarVC.view到Windows子視圖。

所以就像我說的它的工作原理,但我希望以後我設置窗口子視圖TabBarVC.view我可以釋放TabBarViewController到的dealloc它和appdelagate將擁有TabBarVC,但是當我做它的崩潰。

由於我打字這我意識到我從來沒有通過實際的TabBarVC,只是看法,但有沒有辦法做到這一點?

另外,如果我完全FUBAR'd這件事讓我知道。

謝謝你的任何和所有的建議。

回答

0

你應該窗口的rootViewController屬性設置爲類似於這樣您UITabBarController實例:

// set the tab bar controller as our root view controller  
    [self.window setRootViewController:tabBarController]; 

爲了澄清,這將TabBarController,其視圖及其所有子視圖添加到窗口的視圖層次,爲您和我建議你也使用這種方法來登錄視圖控制器。

-1

你可以讓你的UITabBarController爲IBOutlet給應用程序委託(或者只是保留生成它的代碼)。將它作爲應用程序委託的保留屬性,綜合該屬性,並在應用程序委託中創建UITabBarController(self.tabBarController = ...),或者如果使用xib將從UITabBarController的IBOutlet連接創建到xib中的應用程序委託。

您可以在的UITabBarController添加到應用程序的窗口,然後添加了FrontPage的UIViewController在它的上面。一旦從窗口中移除FrontPage,UITabBarController就會出現在它的下面。

相關問題