title: Add a Tab Bar Controller Programmatically to current App Flow
body: <p>I want to add a tab Bar Controller to my current App Flow. Currently I have a page with a button which on clicking opens a new viewcontroller with a web view where the user logs in and after login I want to take him to his home Page where the navigation bar has his name and a logout button in the right. The home page should also have a tab bar with 3 different tabs.
  I am able to load the home page view from the webview and get the navigation bar. But I am unable to add the tabBar and get it working. I am confused as to where to add the code for adding TabBar. I am using the below code to add tab bar - </p>
  
  <pre><code>UITabBarController *tabBar = [[UITabBarController alloc] init];
  
  HomeViewController *home = [[PPHomeViewController alloc] initWithUserName:[self.userInfo objectForKey:@"name"] Email:[self.userInfo objectForKey:@"email"] Phone:[self.userInfo objectForKey:@"phone_number"]];
  home.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:1];
  UINavigationController *homeNavController = [[UINavigationController alloc]initWithRootViewController:home];
  
  RequestViewController *req = [[RequestMoneyViewController alloc]init];
  req.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:2];
  UINavigationController *reqNavController = [[UINavigationController alloc]initWithRootViewController:req];
  
  UIViewController *thirdViewController = [[UIViewController alloc]init];
  thirdViewController.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:3];
  UINavigationController *thirdNavController = [[UINavigationController alloc]initWithRootViewController:thirdViewController];
  
  UIViewController *fourthViewController = [[UIViewController alloc]init];
  thirdViewController.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:3];
  UINavigationController *fourthNavController = [[UINavigationController alloc]initWithRootViewController:fourthViewController];
  
  tabBar.viewControllers = [[NSArray alloc] initWithObjects:homeNavController, reqNavController, thirdNavController, fourthNavController, nil];
  tabBar.delegate=self;
  tabBar.selectedIndex=0;
  
  UIImageView *homeImg=[[UIImageView alloc]initWithFrame:CGRectMake(0, 432, 80, 49)];
  homeImg.tag=11;
  homeImg.image=[UIImage imageNamed:@"footer"];
  
  UIImageView *reqImg=[[UIImageView alloc]initWithFrame:CGRectMake(81, 432,80, 49)];
  reqImg.tag=12;
  reqImg.image=[UIImage imageNamed:@"footer"];
  
  UIImageView *sendImg=[[UIImageView alloc]initWithFrame:CGRectMake(162, 432,80, 49)];
  sendImg.tag=13;
  sendImg.image=[UIImage imageNamed:@"footer"];
  
  UIImageView *localImg=[[UIImageView alloc]initWithFrame:CGRectMake(243, 432, 80, 49)];
  localImg.tag=14;
  localImg.image=[UIImage imageNamed:@"footer"];
  
  [tabBar.view addSubview:homeImg];
  [tabBar.view addSubview:reqImg];
  [tabBar.view addSubview:sendImg];
  [tabBar.view addSubview:localImg];
  
  [[[UIApplication sharedApplication]keyWindow]addSubview:tabBar.view];
  </code></pre>
  
  <p>Currently I have put the above code in the viewDidLoad of a ViewController TabViewController which extends UITabBarController. In my webView controller I have put the following code - </p>
  
  <pre><code>TabViewController *tab=[[TabViewController alloc] init];
  tab.userInfo=userInfo;
  [self presentViewController:tab animated:YES completion:nil];
  </code></pre>
  
  <p>But the app crashes as soon as I click any tab other than the one already open.
  Please Help.</p>