0

我正在做一個應用程序,但我仍然是一個初學者,我試圖去習慣RootViewController以及它應該如何設置。TabBarController和NavigationController

在開始我的應用程序啓動時,我希望在那裏有一個不在我的tabBarController(它被設置爲我的rootViewController)的View。

我想問的是,我可以有另一個視圖,它不在我的UITabBarController啓動之外,而不是它在tabBarController的項目列表中?

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    // Override point for customization after application launch. 

    FacebookFeedViewController *facebookClass = [[FacebookFeedViewController alloc] initWithNibName:@"FacebookFeedViewController" bundle:nil]; 

    TwitterFeedViewController *twitterClass = [[TwitterFeedViewController alloc] initWithNibName:@"TwitterFeedViewController" bundle:nil]; 
    LinkedInFeedViewController *linkClass = [[LinkedInFeedViewController alloc] initWithNibName:@"LinkedInFeedViewController" bundle:nil]; 
    FTLFullFeedViewController *masterClass = [[FTLFullFeedViewController alloc] initWithNibName:@"FTLFullFeedViewController" bundle:nil]; 

    /// tab button title 

    facebookClass.title = @"Facebook"; 
    twitterClass.title = @"Twitter"; 
    [email protected]"LinkedIn"; 
    [email protected]"FTL"; 

    // tab button Images 
    facebookClass.tabBarItem.image = [UIImage imageNamed:@"facebook_32"]; 
    twitterClass.tabBarItem.image = [UIImage imageNamed:@"twitter_32"]; 

    WelcomeViewController *welcomeClass= [[WelcomeViewController alloc] initWithNibName:@"WelcomeViewController" bundle:nil]; 

    navController = [[ UINavigationController alloc] initWithRootViewController:welcomeClass]; 

    UINavigationController *navController2 = [[UINavigationController alloc] initWithRootViewController:facebookClass]; 
    UINavigationController *navController3 = [[UINavigationController alloc] initWithRootViewController:twitterClass]; 
    UINavigationController *navController4 = [[UINavigationController alloc] initWithRootViewController:linkClass]; 
    UINavigationController *navController5 = [[UINavigationController alloc] initWithRootViewController:masterClass]; 

    self.tabBarController = [[UITabBarController alloc] init]; 
    self.tabBarController.viewControllers = [NSArray arrayWithObjects:navController,navController5,navController2,navController3,navController4,nil]; 
    self.window.rootViewController = self.tabBarController; 
    [self.window makeKeyAndVisible]; 

    return YES; 
} 
+0

您使用的是什麼版本的XCode? – Dan

+0

最新版本,4.6.2 – user2282749

+0

你在使用故事板嗎? – Dan

回答

0

我知道你已經選擇了一個答案,但所做的只是在現有視圖的頂部推送一個UITabBar視圖,而不是創建一個新的UITabBarController視圖。根據我們的簡短對話(最新的XCode,沒有故事板,使用XIBs)你將要創建一個廈門國際銀行作爲一個的UITabBarController,然後將它推入視圖...

View *view = [[View alloc] initWithNibName:@"myUITabBarXIB" bundle:nil]; 
view.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentModalViewController: view animated:YES]; 

這將爲你的XIB文件,但當期望的操作發生時,不在現有的視圖控制器之上。

+0

非常感謝您的回答。它更有意義,這正是我所需要的。希望我能在將來幫助你。再次感謝。 – user2282749

0

是的!你做的事情。

[self.view addsubview:yourTabbar.view]; 

希望這會對你有幫助。

+0

我應該在appDelegate中使用它還是在視圖中我想顯示tabBar? – user2282749

+0

它重疊的視圖,我如何刪除下面的視圖? – user2282749

+0

您需要在appDelegate中添加導航控制器。之後,瀏覽viewController - > subviewController。在這裏你添加了tabbar。 –

相關問題