MainView.xib不在标签栏应用程序中

时间:2011-11-23 21:43:51

标签: iphone ios uiview default uitabbar

我是标签栏应用程序的新手,我发现需要在MainView.xib中更改内容的所有教程,但是当我创建一个新的标签栏应用程序(在Xcode 4中)时,没有MainView.xib。唯一的有:

FirstViewController_iPhone.xib
首先... iPad.xib
其次... iPhone.xib
第二... iPad.xib

是否应该存在并且它丢失了,或者您能指出我不需要Interface Builder的教程吗?

1 个答案:

答案 0 :(得分:0)

在iOS的最后几个修订版中,设置主界面的方法已经改变。您可以在项目设置或代码中进行设置,如默认情况下所做的那样:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
    // Override point for customization after application launch.
    UIViewController *viewController1, *viewController2;
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        viewController1 = [[[FooFirstViewController alloc] initWithNibName:@"FooFirstViewController_iPhone" bundle:nil] autorelease];
        viewController2 = [[[FooSecondViewController alloc] initWithNibName:@"FooSecondViewController_iPhone" bundle:nil] autorelease];
    } else {
        viewController1 = [[[FooFirstViewController alloc] initWithNibName:@"FooFirstViewController_iPad" bundle:nil] autorelease];
        viewController2 = [[[FooSecondViewController alloc] initWithNibName:@"FooSecondViewController_iPad" bundle:nil] autorelease];
    }
    self.tabBarController = [[[UITabBarController alloc] init] autorelease];
    self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, nil];
    self.window.rootViewController = self.tabBarController;
    [self.window makeKeyAndVisible];
    return YES;

}

由于它是一个标签栏应用程序,应用程序在代码中创建一个UITabBarController,然后将其视图控制器设置为FirstViewController和SecondViewController类的实例。

如果你想阅读这本书,你可以删除这个方法的内容并创建一个名为MainWindow.xib的xib,其中有一个标签栏控制器和两个子节点,即上述实例。单击目标设置,在“摘要”页面的 iPhone / iPod部署信息下,您会看到一个标有主界面的下拉菜单。将其值设置为MainWindow.xib,以便在应用程序运行时加载它。