2011-04-16 76 views
0

我有點卡住,並會明白我做錯了什麼想法。 我編程方式創建一個NSObject的,其持有的UITabBarController向其中添加了三個ViewControllers:UITabBarController加載子視圖

UITabBarController tabBarController = [[UITabBarController alloc] init]; 

ControllerOne = [[OneViewController alloc] initWithNibName:@"OneView" bundle:nil];  
ControllerTwo = [[TwoViewController alloc]initWithNibName:@"TwoView" bundle:nil]; 
ControllerThree = [[ThreeViewController alloc] initWithNibName:@"ThreeView" bundle:nil]; 
NSMutableArray *viewControllers = [[NSMutableArray alloc] initWithCapacity:3]; 
[viewControllers addObject:ControllerOne]; 
[viewControllers addObject:ControllerTwo]; 
[viewControllers addObject:ControllerThree]; 
[tabBarController setViewControllers:viewControllers];' 

我現在顯示tabBarController的觀點

viewController.modalTransitionStyle = transitionStyle; 
[self presentModalViewController:viewController animated:YES]; 

用的viewController作爲剛剛創建tabBarController。 視圖正常變化,正確顯示標籤欄(圖標和標題),但未能顯示例如OneViewController的視圖。我假設視圖未被加載,因爲- (void)viewDidLoad沒有被任何子視圖控制器調用。

我將不勝感激任何建議。

感謝, 球菌

回答

0

你確定你的筆尖的名字是你如何輸入呢?例如,它不叫OneViewController.xib?

+0

筆尖名稱爲OneView.xib,TwoView.xib和ThreeView.xib。據我所知,我不需要在使用'initWithNibName'時提供文件結尾。但是我只是用_.xib_文件擴展名嘗試了它,並沒有加載。 – equinox 2011-04-17 07:19:37

+0

我已經嘗試過你正在嘗試做什麼而沒有任何問題。所以,也許你可以發佈更多的代碼,比如ControllerOne和所有你的ivar和屬性聲明。 – Jamie 2011-04-17 09:37:14

0

我整理了問題。 上面的代碼實際上工作,視圖沒有出現的原因是我不小心綜合UIViewController派生中的'視圖'。