簡體   English   中英

從視圖控制器加載Tabbar控制器

[英]loading Tabbar controller from view controller

我正在一個必須有登錄頁面的項目中工作,成功登錄后,當我嘗試使用以下代碼加載標簽欄控制器時,我們應該具有標簽欄視圖(我正在使用標簽欄控制器)。 。

LoginSuccess *viewController = [[LoginSuccess alloc] initWithNibName:@"LoginSuccess" bundle:nil];
        [self.view addSubview:viewController.tabBarController.view];
        [viewController release];

請幫我。

我做同樣的工作,但登錄成功后我叫appdelegate [mAppDelegate loadTabbar]; //在委托文件中調用函數以加載遵循以下代碼的選項卡視圖

#pragma mark -
#pragma mark Load TabBar
-(void)loadTabBar
{
    self.tabBarController = [[UITabBarController alloc] init];
    tabBarController.delegate = self;

    MyAlarmVC *myAlarmVC = [[MyAlarmVC alloc] initWithNibName:@"MyAlarmVC" bundle:nil];
    UINavigationController *myAlarmNVC = [[UINavigationController alloc] initWithRootViewController:myAlarmVC];
    myAlarmNVC.navigationBar.tintColor = [UIColor whiteColor];
    [myAlarmVC release];


    MyVideosVC *myVideoVC = [[MyVideosVC alloc] initWithNibName:@"MyVideosVC" bundle:nil];
    UINavigationController *myVideoNVC = [[UINavigationController alloc] initWithRootViewController:myVideoVC];
    myVideoNVC.navigationBar.tintColor = [UIColor whiteColor];
    [myVideoVC release];


    MyFriendsVC *myFriendVC = [[MyFriendsVC alloc] initWithNibName:@"MyFriendsVC" bundle:nil];
    UINavigationController *myFriendNVC = [[UINavigationController alloc] initWithRootViewController:myFriendVC];
    myFriendNVC.navigationBar.tintColor = [UIColor whiteColor];
    [myFriendVC release];


    MyMessageVC *myMessageVC = [[MyMessageVC alloc] initWithNibName:@"MyMessageVC" bundle:nil];
    UINavigationController *myMessageNVC = [[UINavigationController alloc] initWithRootViewController:myMessageVC];
    myMessageNVC.navigationBar.tintColor = [UIColor whiteColor];
    [myMessageVC release];

    MyProfileVC *myProfileVC = [[MyProfileVC alloc] initWithNibName:@"MyProfileVC" bundle:nil];
    UINavigationController *myProfileNVC = [[UINavigationController alloc] initWithRootViewController:myProfileVC];
    myProfileNVC.navigationBar.tintColor = [UIColor whiteColor];
    [myProfileVC release];

    tabBarController.viewControllers = [NSArray arrayWithObjects:myAlarmNVC,myVideoNVC, myFriendNVC,myMessageNVC,myProfileNVC, nil];
    [myAlarmNVC release];
    [myVideoNVC release];
    [myProfileNVC release];
    [myFriendNVC release];
    [myMessageNVC release];
    [self.window addSubview:tabBarController.view ];
    //tabBarController.navigationController.navigationBarHidden = YES;
    [self.tabBarController release];

}

- (void)tabBarController:(UITabBarController *)tabBarController1 didSelectViewController:(UIViewController *)viewController{

    NSArray *vc= tabBarController1.viewControllers;

    for (int i = 0; i < [vc count]; i++) {

        UINavigationController *nc = [vc objectAtIndex:i];

        if (nc == tabBarController1.selectedViewController) {

            continue;
        }

[nc popToRootViewControllerAnimated:NO];
    }

}

如果遇到問題,請告訴我選項卡的視圖名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM