0
我想以編程方式將NavigationController添加到我的TabBarController應用程序中。以編程方式將一個NagivationController添加到TabBarController中
我的代碼:
UIViewController *viewController1 = [[FirstViewController alloc]
initWithNibName:@"FirstViewController" bundle:nil];
UIViewController *viewController2 = [[SecondViewController alloc]
initWithNibName:@"SecondViewController" bundle:nil];
UIViewController *viewController3 = [[ThirdViewController alloc]
initWithNibName:@"ThirdViewController" bundle:nil];
UITabBarController *tabController = [[UITabBarController alloc] init];
tabController.viewControllers = @[viewController1, viewController2, viewController3];
return tabController;
我想一個tableview中/的DetailView添加到ThirdViewController,又明白我需要使它導航控制器來做到這一點。
另一個論壇說我可以做類似下面的事情,但我遇到各種麻煩,改變我的項目去做他們的例子。有誰知道如何操作代碼的頂部,並將NavigationController編程到TabBarController中?
別人的示例代碼
UIViewController *viewController1, *viewController2;
viewController1 = [[[UIViewController alloc] initWithNibName:@"FirstViewController_iPhone"
bundle:nil] autorelease];
UINavigationController *navigationcontroller = [[[UINavigationController alloc]
initWithRootViewController:viewController1] autorelease];
viewController2 = [[[UIViewController alloc]
initWithNibName:@"SecondViewController_iPhone" bundle:nil] autorelease];
self.tabBarController = [[[UITabBarController alloc] init] autorelease];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:navigationcontroller,
viewController2, nil];
我試圖把他們放在一起,它看起來像這樣:
UIViewController *viewController1 = [[FirstViewController alloc]
initWithNibName:@"PDCFirstViewController" bundle:nil];
UIViewController *viewController2 = [[SecondViewController alloc]
initWithNibName:@"SecondViewController" bundle:nil];
viewController3 = [[UIViewController alloc] initWithNibName:@"ThirdViewController"
bundle:nil];
UINavigationController *navigationcontroller = [[UINavigationController alloc]
initWithRootViewController:viewController3];
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray
arrayWithObjects:viewController1,viewController2,navigationcontroller, nil];
return 0;
我沒有得到任何錯誤,應用程序只是退出。任何幫助將是偉大的!謝謝你們!
「各種各樣的麻煩」並不是對你的問題很有幫助的描述。而不是別人的代碼,張貼你自己的,讓我們看看你得到的錯誤信息。否則,人們可能會猜測這是您可能想要由其他人解決的某種任務。 –
你有什麼樣的問題?它是編譯器警告你嗎? – Shmidt
@DanielSchneller感謝您的指導。我已經更新了條目,包括我的失敗代碼:) - 我一直試圖讓所有這些工作大約兩天。任何轉發進度將不勝感激! – Brandon