2

我有一个选项卡视图控制器作为我在应用程序中的根控制器,它由 3 个选项卡组成,我们称它们为视图 A、视图 B、视图 C。我想在我的应用程序启动后立即加载这些选项卡,我认为可以在其中完成 didFinishLaunchingWithOptions功能,但我不确定,有人知道怎么做吗?

谢谢

4

1 回答 1

0

出于这些目的,我使用了这种方法:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    self.window = window;

    UITabBarController *tabBarController = [[UITabBarController alloc] init];

    rootView = [[SGMenuViewController alloc] init];

    UIViewController *tab1VC = [[UIViewController alloc] init];
    UIViewController *tab2VC = [[UIViewController alloc] init];
    UIViewController *tab3VC = [[UIViewController alloc] init];
    UIViewController *tab4VC = [[UIViewController alloc] init];

    navController = [[UINavigationController alloc] initWithRootViewController:rootView];
    UINavigationController *secondNavController = [[UINavigationController alloc] initWithRootViewController:tab3VC];

    NSArray* controllers = [NSArray arrayWithObjects:navController, tab2VC, secondNavController, tab4VC, nil];
    tabBarController.viewControllers = controllers;

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    self.window.rootViewController = tabBarController;
    [self.window makeKeyAndVisible];
    return YES;
}

您基本上创建了一个UITabBarController并将所有视图放在那里。UINavigationController如果您需要在选定的选项卡中推送/弹出视图,您可以创建一个。在上面的示例中,只有1st3rd选项卡具有UINavigationController,因此我可以self.navigationController pushViewController:在它们上使用。

于 2013-03-15T14:59:23.470 回答