Okan
Okan

Reputation: 1293

IOS TabBarController Questions

TabBar will be about 2 question. I am using a combination of a TabBar and NavigationController. As the following link.

http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/CombiningViewControllers/CombiningViewControllers.html

Question 1:

I would like to appear before a TabBar to another ViewController. Several checks are here to do. (For example, Facebook login) If the prerequisites are met, tabbar will be visible. How do I do?

Question 2:

TabBar screen icon that appears in the middle of the first TabBar want it to be. The following code sequence also affects the order of TabBarItem.

self.tabBarController.viewControllers = [NSArray arrayWithObjects: viewController1, viewController2, nil];

Thank you.

Okan Sahin

Upvotes: 1

Views: 395

Answers (1)

Okan
Okan

Reputation: 1293

For those who have the same problem:

I'm using Xcode 4.2. I have created Tabbed App.

Answer 1:

For loading screen,

I created a new ViewController.

AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    UIViewController *viewControllerLoading = [[LoadingViewController alloc] initWithNibName:@"LoadingViewController" bundle:nil];

    self.window.rootViewController = viewControllerLoading;

    [self.window makeKeyAndVisible];

    return YES;
}

LoadingViewController.h

@interface LoadingViewController : UIViewController <UITabBarControllerDelegate>

@property (strong, nonatomic) UITabBarController *tabBarController;

@end

LoadingViewController.m

 UIViewController *viewControllerFriends = [[FriendsViewController alloc] initWithNibName:@"FriendsViewController" bundle:nil];
    UINavigationController* navController1 = [[UINavigationController alloc]
                                              initWithRootViewController:viewControllerFriends];
    UIViewController *viewConrollerMessages = [[MessagesViewController alloc] initWithNibName:@"MessagesViewController" bundle:nil];
    UINavigationController* navController2 = [[UINavigationController alloc]
                                              initWithRootViewController:viewConrollerMessages];
    UIViewController *viewControllerWorld = [[WorldViewController alloc] initWithNibName:@"WorldViewController" bundle:nil];
    UINavigationController* navController3 = [[UINavigationController alloc]
                                              initWithRootViewController:viewControllerWorld];

    UIViewController *viewControllerCheckIn = [[CheckInViewController alloc] initWithNibName:@"CheckinViewController" bundle:nil];
    UINavigationController* navController4 = [[UINavigationController alloc]
                                              initWithRootViewController:viewControllerCheckIn];

    UIViewController *viewControllerProfile = [[ProfileViewController alloc] initWithNibName:@"ProfileViewController" bundle:nil];
    UINavigationController* navController5 = [[UINavigationController alloc]
                                              initWithRootViewController:viewControllerProfile];

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

    [self.view addSubview:self.tabBarController.view];

Answer 2:

    self.tabBarController.selectedIndex = 2;

Best regards

Okan Sahin

Upvotes: 1

Related Questions