Как я могу создать приложение с несколькими типами контроллеров? - PullRequest
1 голос
/ 26 мая 2010

Как мне сделать следующее:

  1. Когда мое приложение загружается, UIView покажет 4 кнопки
  2. Нажатие на кнопку загрузит UITabBarController (не UIView с UITabBar), который может отображать несколько представлений.

Это кажется мне сложным, потому что для того, чтобы я мог использовать UITabBarController, мне нужно добавить это в подпредставление окна в моем appDelegate. При этом мое приложение автоматически загрузится с помощью UITabbarController в корневом представлении.

1 Ответ

1 голос
/ 26 мая 2010

Вам не нужно добавлять UITabBarController в делегат приложения, это просто самый распространенный способ его использования. Вы можете использовать начальный вид для простого UIViewController, затем при нажатии кнопки загрузить UITabBarController (программно или из кончика) и затем отобразить его.

Ниже приведен пример того, что может быть в вашем делегате приложения:

- (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
    // viewController is a UIViewController loaded from MainWindow.xib with a button that calls loadTabBarController
    [window addSubview:viewController.view];
    [window makeKeyAndVisible];

    return YES;
}

- (IBAction) loadTabBarController {
    self.tabBarController = [[[UITabBarController alloc] initWithNibName:@"MyTabBarController" bundle:nil] autorelease];
    [viewController.view removeFromSuperview];
    [window addSubview:tabBarController.view];
}
...